import java.util.*;
public class Main {
public static void main(String[] args) {
String hex = toHex(12500);
if (hex.equalsIgnoreCase("30D4")) {
System.out.println("测试通过");
} else {
System.out.println("测试失败");
}
static String toHex(int n) {
Deque<String> q = new LinkedList<>();
String[] str = {"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"};
while(n > 0){
q.push(str[n % 16]);
n = n/16;
String ans = "";
int size = q.size();
for(int i=0;i<size;i++){
String tmp = q.pop();
ans = ans + tmp;
return ans;
q.size()如果直接放在循环那里,循环就只执行2次,太奇怪了
执行过程中size会变的,不可以放在for里边儿
Sign in to make a reply
The__Wolf
import java.util.*;
public class Main {
public static void main(String[] args) {
String hex = toHex(12500);
if (hex.equalsIgnoreCase("30D4")) {
System.out.println("测试通过");
} else {
System.out.println("测试失败");
}
}
static String toHex(int n) {
Deque<String> q = new LinkedList<>();
String[] str = {"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"};
while(n > 0){
q.push(str[n % 16]);
n = n/16;
}
String ans = "";
int size = q.size();
for(int i=0;i<size;i++){
String tmp = q.pop();
ans = ans + tmp;
}
return ans;
}
}
q.size()如果直接放在循环那里,循环就只执行2次,太奇怪了