Java 打印特定字符
我有一个字符串输入,这个输入有一个队名和分数,用一个空格隔开。e、 gJava 打印特定字符,java,string,for-loop,input,char,Java,String,For Loop,Input,Char,我有一个字符串输入,这个输入有一个队名和分数,用一个空格隔开。e、 gbb 3,teamd 5冠军应该是teamd 为了获得得分最高的优胜者团队,我正在做以下工作: Scanner scanner = new Scanner(System.in); int cases = scanner.nextInt(); printWinnerTeam(cases); } public static void printWinnerTeam(int cases) { Sca
bb 3
,teamd 5
冠军应该是teamd
为了获得得分最高的优胜者团队,我正在做以下工作:
Scanner scanner = new Scanner(System.in);
int cases = scanner.nextInt();
printWinnerTeam(cases);
}
public static void printWinnerTeam(int cases) {
Scanner scanner = new Scanner(System.in);
String str = "";
String winnerTeam = "";
int winnerScore = 0, countedChar = 0;
for (int i = 0; i < cases; i++) {
str += scanner.nextLine();
}
char[] arr = str.toCharArray();
for (int i = 0; i < arr.length; i++) {
countedChar++;
if (arr[i] == ' ') {
if (str.charAt(i + 1) > winnerScore) {
winnerTeam = "";
winnerScore = (int) str.charAt((int) i + 1);
for (int j = 0; j < countedChar; j++) {
winnerTeam += str.charAt(j);
}
countedChar = 0;
} else {
//winnerTeam = "";
countedChar = 0;
}
}
}
System.out.println(winnerTeam);
}
Scanner Scanner=新的扫描仪(System.in);
int cases=scanner.nextInt();
printWinnerTeam(案例);
}
publicstaticvoidprintwinerteam(int案例){
扫描仪=新的扫描仪(System.in);
字符串str=“”;
字符串winnerTeam=“”;
int winnerScore=0,countedChar=0;
对于(int i=0;iwinnerScore){
winnerTeam=“”;
winnerScore=(int)str.charAt((int)i+1);
对于(int j=0;j
但这不是完美的工作,这是打印连线的结果,如何让它像预期的那样工作 我还没有试过你的代码,但我想一个大问题是
str+=scanner.nextLine()的串联代码>新行将直接追加到前一行号的末尾
看看这个
Scanner sc = new Scanner(System.in);
int bestScore = Integer.MIN_VALUE;
String team = "Nothing entered";
System.out.println("how many teams");
int count = sc.nextInt();
sc.nextLine();
while (count-- > 0) {
System.out.println("Entered team,score");
String line = sc.nextLine();
String arr [] = line.split(" ");
// check size - TBD
if (Integer.parseInt(arr[1]) > bestScore) {
bestScore = Integer.parseInt(arr[1]);
team = arr[0];
}
}
System.out.println("nest team is " + team + " with a score of " + bestScore);
我还没有试过你的代码,但我想一个大问题是str+=scanner.nextLine()的串联代码>新行将直接追加到前一行号的末尾
看看这个
Scanner sc = new Scanner(System.in);
int bestScore = Integer.MIN_VALUE;
String team = "Nothing entered";
System.out.println("how many teams");
int count = sc.nextInt();
sc.nextLine();
while (count-- > 0) {
System.out.println("Entered team,score");
String line = sc.nextLine();
String arr [] = line.split(" ");
// check size - TBD
if (Integer.parseInt(arr[1]) > bestScore) {
bestScore = Integer.parseInt(arr[1]);
team = arr[0];
}
}
System.out.println("nest team is " + team + " with a score of " + bestScore);
如果我必须这样做,我会这样做:
import java.util.*;
public class winner {
public static void main (String args []) {
Scanner scanner = new Scanner(System.in);
int cases = scanner.nextInt();
printWinnerTeam(cases);
}
public static void printWinnerTeam(int cases) {
Scanner scanner = new Scanner(System.in);
String winnerTeam = "";
String Team="";
int winnerScore = 0, score = 0;
for (int i = 0; i < cases; i++) {
Team = scanner.next();
score = scanner.nextInt();
if(score > winnerScore){
winnerTeam = Team;
winnerScore = score;
}
}
System.out.println("Winner team" + winnerTeam + "Score:" + winnerScore);
}
}
import java.util.*;
公开课优胜者{
公共静态void main(字符串参数[]){
扫描仪=新的扫描仪(System.in);
int cases=scanner.nextInt();
printWinnerTeam(案例);
}
publicstaticvoidprintwinerteam(int案例){
扫描仪=新的扫描仪(System.in);
字符串winnerTeam=“”;
字符串组=”;
int winnerScore=0,分数=0;
对于(int i=0;iwinnerScore){
winnerTeam=团队;
winnerScore=分数;
}
}
System.out.println(“赢家团队”+winnerTeam+”分数:“+winnerScore”);
}
}
如果我必须这样做,我会这样做:
import java.util.*;
public class winner {
public static void main (String args []) {
Scanner scanner = new Scanner(System.in);
int cases = scanner.nextInt();
printWinnerTeam(cases);
}
public static void printWinnerTeam(int cases) {
Scanner scanner = new Scanner(System.in);
String winnerTeam = "";
String Team="";
int winnerScore = 0, score = 0;
for (int i = 0; i < cases; i++) {
Team = scanner.next();
score = scanner.nextInt();
if(score > winnerScore){
winnerTeam = Team;
winnerScore = score;
}
}
System.out.println("Winner team" + winnerTeam + "Score:" + winnerScore);
}
}
import java.util.*;
公开课优胜者{
公共静态void main(字符串参数[]){
扫描仪=新的扫描仪(System.in);
int cases=scanner.nextInt();
printWinnerTeam(案例);
}
publicstaticvoidprintwinerteam(int案例){
扫描仪=新的扫描仪(System.in);
字符串winnerTeam=“”;
字符串组=”;
int winnerScore=0,分数=0;
对于(int i=0;iwinnerScore){
winnerTeam=团队;
winnerScore=分数;
}
}
System.out.println(“赢家团队”+winnerTeam+”分数:“+winnerScore”);
}
}
如何简化它,但只需边走边处理。如果输入的行分数最大,则存储编号和团队名称-使用String.split(“,”);我没有试过你的代码,但我想一个大问题是str+=scanner.nextLine()的串联代码>新行将直接添加到前几行的末尾。编号
@ScaryWombat确实是的,我会跳出框框思考,我的问题是+=
,谢谢,请随意让它接受答案如何简化它,但只需边走边处理。如果输入的行分数最大,则存储编号和团队名称-使用String.split(“,”);我没有试过你的代码,但我想一个大问题是str+=scanner.nextLine()的串联代码>新行将直接添加到前几行的末尾。编号
@ScaryWombat确实是的,我会跳出框框思考,我的问题是+=
,谢谢,欢迎接受answer@AndyTurner谢谢,我需要清理屏幕对不起,你知道怎么了吗,要在我的代码中获得运行时错误?@android在Eclipse中对我很好多少情况2多少团队2进入团队,得分test1 2进入团队,得分me 23多少团队2进入团队,得分test2 4进入团队,再次得分me_23 me_再次得分me_
,谢谢,我需要清理我的屏幕对不起,你知道我的代码出现runTimeError是怎么回事吗?@android在Eclipse中运行得很好多少情况2多少个团队2进入团队,得分test1 2进入团队,得分me 23多少个团队2进入团队,得分test2 4进入团队,再次得分me 23 me_再次得分me_