Java 函数值总是乘以2
我在我的类中创建了一个函数“m7”,但是这个函数总是返回值乘以2。 如果我在“psvm”中运行此函数,它将打印正确的值。 在我的Alice类中,方法m7()返回10,这是不正确的,但如果我在psvm中运行此方法,则返回5,这是正确的Java 函数值总是乘以2,java,function,Java,Function,我在我的类中创建了一个函数“m7”,但是这个函数总是返回值乘以2。 如果我在“psvm”中运行此函数,它将打印正确的值。 在我的Alice类中,方法m7()返回10,这是不正确的,但如果我在psvm中运行此方法,则返回5,这是正确的 package com.math.functions; import java.util.*; public class Alice { Integer[] rank= new Integer[7]; Integer n=65;
package com.math.functions;
import java.util.*;
public class Alice {
Integer[] rank= new Integer[7];
Integer n=65;
int count=0;
public Alice() {
rank[0]=100;
rank[1]=100;
rank[2]=90;
rank[3]=80;
rank[4]=75;
rank[5]=60;
rank[6]=n;
//rank[6]=20;
//rank[7]=10;
//rank[8]=n;
Arrays.sort(rank, Collections.reverseOrder());
}
public void print() {
for (Integer a : rank) {
System.out.println(a);
}
}
public int m7() {
for (int i = 0; i < rank.length; i++) {
if (rank[i] == n) {
break;
}
count++;
}
return count;
}
public void res(){
int s = m7();
System.out.println("this is the value of s here :"+s);
Set<Integer> hash_Set = new HashSet<>();
for(int i=0;i<=s/2;i++){
System.out.println("hii");
hash_Set.add(rank[i]);
}
for(Integer o:hash_Set){
System.out.println(o);
System.out.println("rank:"+hash_Set.size());
}
}
public static void main(String[] args) {
Alice a=new Alice();
a.print();
System.out.println("this is: "+a.m7());
a.res();
}
}
package com.math.functions;
导入java.util.*;
公共课爱丽丝{
整数[]秩=新整数[7];
整数n=65;
整数计数=0;
公众谘询委员会(){
秩[0]=100;
排名[1]=100;
秩[2]=90;
排名[3]=80;
排名[4]=75;
排名[5]=60;
秩[6]=n;
//排名[6]=20;
//排名[7]=10;
//秩[8]=n;
sort(rank,Collections.reverseOrder());
}
公开作废印刷品(){
for(整数a:秩){
系统输出打印项次(a);
}
}
公共int m7(){
for(int i=0;i 对于(int i=0;i您正在重用上次运行时的count
值
不要将count
声明为成员变量,将其设置为局部变量
public int m7() {
int count = 0; // HERE
for (int i = 0; i < rank.length; i++) {
if (rank[i] == n) {
break;
}
count++;
}
return count;
}
public int m7(){
int count=0;//此处
for(int i=0;i
您正在重用上次运行时的count
值
不要将count
声明为成员变量,将其设置为局部变量
public int m7() {
int count = 0; // HERE
for (int i = 0; i < rank.length; i++) {
if (rank[i] == n) {
break;
}
count++;
}
return count;
}
public int m7(){
int count=0;//此处
for(int i=0;i
另外:帮你自己(和你想读代码的其他人)一个忙,给你方法(和变量等)合理的名称。m7对于没有上下文的人来说基本上没有意义。你很幸运,你的示例值也是:帮你自己(和你想读代码的其他人)一个忙,给你方法(和变量等)合理的名称。m7
对于没有上下文的人来说基本上没有意义。你很幸运,你的示例值都是