Arraylist 需要使用java从emp.csv获得最高工资和第二高工资的帮助吗
我有一个csv文件,其中有3个条目:emp名称、emp id、名称和工资 罗伯特,33岁,经理,12000 杜瓦尔,23岁,合伙人,6000 基隆,33岁,公元20000年 使用Java程序,我喜欢实现最高工资和第二高工资 公务舱高薪{Arraylist 需要使用java从emp.csv获得最高工资和第二高工资的帮助吗,arraylist,Arraylist,我有一个csv文件,其中有3个条目:emp名称、emp id、名称和工资 罗伯特,33岁,经理,12000 杜瓦尔,23岁,合伙人,6000 基隆,33岁,公元20000年 使用Java程序,我喜欢实现最高工资和第二高工资 公务舱高薪{ public static void highSalary() throws IOException { String record; BufferedReader br = new BufferedReader(new FileReader("
public static void highSalary() throws IOException {
String record;
BufferedReader br = new BufferedReader(new FileReader("/Users/ak/Documents/emp.csv"));
System.out.println("\t\t Max Salary Record\n");
System.out.println(" ------------------------------------------------------------- ");
System.out.println("| Name Age Desig Salary |");
System.out.println(" ------------------------------------------------------------- ");
List<List<String>> arlist = new ArrayList<>();
// List<String> list = Arrays.asList(a);
int maxSal = 0;
while ((record = br.readLine()) != null) {
String[] words = record.split(",");
arlist.add(Arrays.asList(words));
for (int i = 0; i < words.length; i++) {
if (maxSal <= Integer.parseInt(words[3])) {
maxSal = Integer.parseInt(words[3]);
} else {
maxSal = maxSal;
}
}
System.out.println("From The Salary Largest Number is:" + maxSal);
}
br.close();
}
public static void highSalary()引发IOException{
字符串记录;
BufferedReader br=新的BufferedReader(新的文件阅读器(“/Users/ak/Documents/emp.csv”);
System.out.println(“\t\t最大工资记录\n”);
System.out.println(“------------------------------------------------------------------”;
System.out.println(“|姓名年龄设计工资|”);
System.out.println(“------------------------------------------------------------------”;
List arlist=new ArrayList();
//List=Arrays.asList(a);
int-maxSal=0;
而((record=br.readLine())!=null){
String[]words=record.split(“,”);
arlist.add(Arrays.asList(words));
for(int i=0;i if(maxSalSystem.out.println(“来自薪资的最大数字是:“+maxSal”);在循环期间将此保持在外部。System.out.println(“来自薪资的最大数字是:“+maxSal”)将此项保留在while循环之外。您需要跟踪两个单独的变量,一个用于最高工资,另一个用于第二高工资。分配最高工资时,前一个最高工资应与第二个最高工资相匹配。分配新的第二高工资时,只有前一个第二高工资将被覆盖
Integer highest = null;
Integer second = null;
while ((record = br.readLine()) != null) {
String[] words = record.split(",");
arlist.add(Arrays.asList(words));
int salary = Integer.parseInt(words[3]);
if (highest == null) {
highest = salary;
second = salary;
}
else if (salary > highest) {
second = highest;
highest = salary;
}
else if (salary > second) {
second = salary;
}
}
System.out.println("highest salary: " + highest);
System.out.println("second highest salary: " + second);
您需要跟踪两个单独的变量,一个用于最高工资,另一个用于第二高工资。分配最高工资时,前一个最高工资应与第二个最高工资相冲突。分配新的第二个最高工资时,只应覆盖前一个第二高工资
Integer highest = null;
Integer second = null;
while ((record = br.readLine()) != null) {
String[] words = record.split(",");
arlist.add(Arrays.asList(words));
int salary = Integer.parseInt(words[3]);
if (highest == null) {
highest = salary;
second = salary;
}
else if (salary > highest) {
second = highest;
highest = salary;
}
else if (salary > second) {
second = salary;
}
}
System.out.println("highest salary: " + highest);
System.out.println("second highest salary: " + second);
这有助于,如何打印具有最高和第二高工资的员工详细信息?您还需要跟踪此元数据,并在记录最高和/或第二高工资时捕获它。但是,您确实提出了一个新问题。您在上面提出的问题已得到回答。这有助于,如何打印员工有最高和第二高工资的详细信息?您还需要跟踪此元数据,并在记录最高和/或第二高工资时捕获它。但是,您确实在问一个新问题。您在上面问的问题已得到回答。