怎么把输入的字符串分割?使用StringTokenizer

That_just_life 2017-09-28 09:05:38
(1)利用Scanner一次性输入多名学生的成绩(为整数),成绩间用空格或逗号隔开;
(2)计算学生的平均成绩,通过消息框输出。
(提示:利用StringTokenizer类将字符串中的成绩分离出来,之后将它们存放到字符串数组中,再转化成int型数值,计算平均成绩并输出结果。)



这是我写的
import java.util.StringTokenizer;
import java.util.Scanner;

public class Test {

public static void main(String[] args){
System.out.println("请输入学生成绩: (成绩间用空格或逗号隔开)");
Scanner s = new Scanner(System.in);
String sc=s.nextLine();
StringTokenizer string[] st=new StringTokenizer(sc," ");
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}



}

}


写不下去了 求指教
...全文
404 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
逆水の鱼 2017-11-30
  • 打赏
  • 举报
回复
StringTokenizer String[] s2=new StringTokenizer(sc," "); 你这句话错了吧,我没用过这个放法,但是我这样写就能输出了:
package Demo;

import java.util.Scanner;
import java.util.StringTokenizer;

public class Test {

	public static void main(String[] args){
	System.out.println("请输入学生成绩: (成绩间用空格或逗号隔开)");
	Scanner s = new Scanner(System.in);
	String sc=s.nextLine();
	StringTokenizer st = new StringTokenizer(sc," ");
	//StringTokenizer String[] s2=new StringTokenizer(sc," ");
	while (st.hasMoreTokens()) {
	        System.out.println(st.nextToken());
	    }



	}

}
最后应该就是这样吧:
package Demo;

import java.util.Scanner;
import java.util.StringTokenizer;

public class Test {

	public static void main(String[] args){
		System.out.println("请输入学生成绩: (成绩间用空格或逗号隔开)");
		Scanner s = new Scanner(System.in);
		String sc=s.nextLine();
		StringTokenizer st = new StringTokenizer(sc," ");
		int[] scores= new int[10];
		int sum = 0;
		int count = 0;
		while (st.hasMoreTokens()) {
			int score = Integer.parseInt(st.nextToken());
		    scores[count] = score;
		    System.out.println(scores[count]);
		    sum += score;
		    count++;
		}
		System.out.println("平均成绩为:" + sum/count );
	}
}
shijies 2017-11-29
  • 打赏
  • 举报
回复
写个循环,逐个读取字符,然后进行判断,如果是空格,就提取出字符串,存入数组内。
是镜花水月 2017-09-28
  • 打赏
  • 举报
回复
你可以 再加一个变量 int add = 0; while (st.hasMoreTokens()) { add += Integer.parseInt(st.nextToken()); } System.out.println(add); 就出来了

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧