最近在学习JAVA技术基础,也尝试练习一些JAVA面试中的编程题来巩固相关的知识点。
具体的问题和代码如下:
问题1:
package com.interview.demo;
/**
* 利用条件运算符的嵌套来完成此题:学习成绩>= 90分的同学用A表示
* 60-89分之间的同学用B表示,
* 60分以下的用C表示
*
*/
public class GradeTest {
public static void main(String[] args) {
int grade = 80;
char level = getGradeLevel(grade);
System.out.println("等级为:" + level);
}
public static char getGradeLevel(int grade) {
char level = grade >= 90 ? 'A' : (grade >= 60 && grade <= 89 ? 'B' : 'C');
return level;
}
}
问题2:如何实现字符串反转str = "abcdegh"
package com.interview.demo;
public class StringTest {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
sb.append("abcdegh");
System.out.println(sb.reverse());
}
}
问题3:
package com.interview.demo;
public class CalcTest {
// 编写一个Java程序在屏幕上输出1!+2!+..+10!的和。(使用循环)
public static void main(String[] args) {
int sum = 0;
int mul = 1;
int num = 11;
for (int i = 1; i < num; i++) {
// 对乘积值做重置
mul = 1;
for (int j = i; j >= 1; j--) {
mul *= j;
}
sum += mul;
}
// 输出:sum=4037913
System.out.println("sum=" + sum);
}
}