阶乘的代码
public class Factorial {
public static Integer factorial(int i){
if(i<0){
System.out.println("输入错误");
return null;
}else if(i==0){
return 1;
}else{
if(i-1 > 1){
return i*factorial(i-1);
}else{
return i;
}
}
}
public static void main(String[] args) {
for(int num=-100;num<10;num++){
System.out.println(num+ "的阶乘是"+ factorial(num));
}
}
}
负数不知道怎么处理好
16进制转换为10进制整数public class Hex2Decimal {
//用Integer的方法
/*
public static int hex2Decimal(String str){
return Integer.parseInt(str, 16);
}*/
//用Character的方法
public static int hex2Decimal(String str){
int len = str.length();
int sum = 0;
for(int i=0;i<len;i++){
char c = str.charAt(i);
int n = Character.digit(c, 16);
sum += n*(1<<(4*i));
}
return sum;
}
public static void main(String[] args) {
String st = "aa";
System.out.println(hex2Decimal(st));
}
}
输出1-9所有的排列组合public class Permutations {
private int[] a = new int[10];
public void init(){
for(int i=1;i<=9;i++){
a[i]=i;
}
}
private void printNumber(){
for(int j=1;j<=9;j++){
System.out.print(a[j]+" ");
}
System.out.println();
}
public void range(int index){
if(index==9){
printNumber();
}
else{
for(int i=index;i<=9;i++){
int k = index;
swap(i,k);
range(k+1);
swap(i,k);
}
}
}
private void swap(int i, int j){
int temp =a[i];
a[i]=a[j];
a[j]=temp;
}
public static void main(String[] args) {
Permutations p = new Permutations();
p.init();
p.range(1);
}
}