java常见编程题(java编程基础题)

admin 491 0

大家好,如果您还对java常见编程题不太了解,没有关系,今天就由本站为大家分享java常见编程题的知识,包括java编程基础题的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

一、java编程题 本人新手,求详解。

1、先看下最终的结果吧,是不是你想要的?

2、其中,Student是父类,PostGraduate是子类,继承自父类Student,Main是主类,用于创建对象以及把这些对象的功能调用起来。

3、---------------------------Student代码如下:------------------------------

4、 private double computerScore;

5、 public void setsName(String sName){

6、 public double getMathScore(){

7、 public void setMathScore(double mathScore){

8、 public double getComputerScore(){

9、 public void setComputerScore(double computerScore){

10、 this.computerScore= computerScore;

11、*输出成员变量(4个成员变量)的信息。

12、 System.out.println("学号:"+sId);

13、 System.out.println("姓名:"+sName);

14、 System.out.println("计算机成绩:"+mathScore);

15、 System.out.println("数学成绩:"+computerScore);

16、---------------------------Student代码结束------------------------------

17、---------------------------PostGraduate代码如下:------------------------------

18、public class PostGraduate extends Student{

19、 private String ResearchDirection;

20、 public void settName(String tName){

21、 public String getResearchDirection(){

22、 public void setResearchDirection(String researchDirection){

23、 ResearchDirection= researchDirection;

24、*研究生类重写父类的void print()方法,功能是输出成员变量(6个成员变量)的信息

25、// TODO Auto-generated method stub

26、 System.out.println("导师姓名:"+tName);

27、 System.out.println("研究方向:"+ResearchDirection);

28、---------------------------PostGraduate代码结束------------------------------

29、---------------------------Main代码如下:------------------------------

30、 public static void main(String[] args){

31、// TODO Auto-generated method stub

32、 Scanner input=new Scanner(System.in);

33、 Student student=new Student();

34、 System.out.print("请输入学生的学号:");

35、 student.setsId(input.nextInt());

36、 System.out.print("请输入学生的姓名:");

37、 student.setsName(input.next());

38、 System.out.print("请输入学生的数学成绩:");

39、 student.setMathScore(input.nextDouble());

40、 System.out.print("请输入学生的计算机成绩:");

41、 student.setComputerScore(input.nextDouble());

42、//并且通过其print方法输出这些信息;

43、//创建一个PostGraduate类的对象

44、 PostGraduate postGraduate=new PostGraduate();

45、 System.out.print("请输入研究生的学号:");

46、 postGraduate.setsId(input.nextInt());

47、 System.out.print("请输入研究生的姓名:");

48、 postGraduate.setsName(input.next());

49、 System.out.print("请输入研究生的数学成绩:");

50、 postGraduate.setMathScore(input.nextDouble());

51、 System.out.print("请输入研究生的计算机成绩:");

52、 postGraduate.setComputerScore(input.nextDouble());

53、 System.out.print("请输入研究生的导师姓名:");

54、 postGraduate.settName(input.next());

55、 System.out.print("请输入研究生的研究方向:");

56、 postGraduate.setResearchDirection(input.next());

57、//并且通过其print方法输出这些信息。

58、---------------------------Main代码结束------------------------------

59、=================知识点的简单总结=================

60、本题考察的知识点是面向对象的三大特性之一:继承。

61、Student为父类,包含了学号、姓名、数学成绩和计算机成绩4个属性,以及一个print()方法。

62、PostGraduate继承父类的时候,继承了父类中的所有方法,因为方法我都是用的public,而属性继承不了,因为我在父类中用了封装,所有属性都用private修饰了,想访问属性的话,必须通过get、set方法,这里,我重写了父类中的print方法,通过super.print();调用了父类中的print()方法。

63、最后就是Main类,提供了main方法作为入口函数,用于按要求声明这些对象以及去调用对象中的方法。

二、8道简单的Java编程题

们学的都是初级,高手别用太复杂的语句。谢谢【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....【程序2】题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。【程序3】题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。【程序4】题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。【程序5】题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?【程序6】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。【程序7】题目:输出9*9口诀。 1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。【程序8】题目:打印出如下图案(菱形)**************************** 1.程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层控制行,第二层控制列。我来帮他解答

private static void tuzinum(){

ArrayList<Integer> list= new ArrayList<Integer>();

for(int j=0;j<list.size();j++){

System.out.println("第"+i+"个月兔子对数为:"+list.size());

插入图片删除图片插入地图删除地图插入视频视频地图

三、JAVA编程的几个简单题目

/*count_6、count_7、count_8用来记录收敛那个数字的个数,在这里我记录只要他出现了10次我就认为他收敛与他了

*还没想到更好的办法,如果不设置这个,就会出现栈溢出,递归不出来了!不过可以看到结果输出结果确实是对的

private Stack<Integer> stack= new Stack<Integer>();//栈用来存放素因子

Scanner scan= new Scanner(System.in);

}catch(NumberFormatException ne){

System.out.println(ne.getMessage());

if(n>2&& 0== n%2)//是大于2偶数

int k= stack.pop().intValue();

if(count_6> 10|| count_7> 10|| count_8> 10)

public static void main(String[] args)

class MyException extends Exception

public MyException(String msg)

Scanner scan= new Scanner(System.in);

}catch(NumberFormatException ne){

System.out.println(ne.getMessage());

public int cal(int a, int b) throws MyException

if(b==0) throw new MyException("自定义异常:输入的第二个数为0");

else if(a/b<1) throw new MyException("自定义异常:相除的结果小于1");

public static void main(String[] args){

MyExceptionTest me= new MyExceptionTest();

System.out.print("请输入第一个数:");

System.out.print("请输入第二个数:");

System.out.println("相除的结果:"+ me.cal(a, b));

System.out.println(e.getMessage());

private static Map<String, Integer> map= new LinkedHashMap<String, Integer>();

private static final int ONE= 1;//没有出现过,则设置其出现一次;

Scanner scan= new Scanner(System.in);

String [] text= content.split("");

for(int i=0; i<text.length; i++)

if(!map.containsKey(text[i])){

public<K, V extends Number> Map<String, V> sortMap(Map<String, V> map){

private void setValue(N value){

List<MyMap<String, V>> list= new ArrayList<MyMap<String, V>>();

for(Iterator<String> i= map.keySet().iterator(); i.hasNext();){

MyMap<String, V> my= new MyMap<String, V>();

Collections.sort(list, new Comparator<MyMap<String, V>>(){

public int compare(MyMap<String, V> o1, MyMap<String, V> o2){

if(o1.getValue().equals(o2.getValue())){

return o1.getKey().compareTo(o2.getKey());

return(int)(o2.getValue().doubleValue()- o1.getValue().doubleValue());

Map<String, V> sortMap= new LinkedHashMap<String, V>();

for(int i= 0, k= list.size(); i< k; i++){

MyMap<String, V> my= list.get(i);

sortMap.put(my.getKey(), my.getValue());

public static void main(String[] args){

CountCharacter cc= new CountCharacter();

Map<String, Integer> sortMap= cc.sortMap(cc.map);

Iterator<Entry<String, Integer>> it= sortMap.entrySet().iterator();

Map.Entry<String,Integer> entry= null;

while(it.hasNext()&& i<10){//去前面10个

entry=(Entry<String,Integer>) it.next();

System.out.println(entry.getKey()+"-->"+ entry.getValue());

public static void main(String[] args){

System.out.print("请输入一个的数:");

System.out.println("输入数据错误!");

System.out.print("请输入显示的行数:");

System.out.println("输入数据错误!");

private Vector<String> vectorStr= new Vector<String>();//用来方单词

private Vector<Integer> vectorInt= new Vector<Integer>();//用来记录对应下标的单词的个数

private static final int ONE= 1;//没有出现过,则设置其出现一次;

Scanner scan= new Scanner(System.in);

String [] text= content.split("");

for(int i=0; i<text.length; i++)

if(vectorStr.contains(text[i])){//若次单词已经存在与vector中则只要修改对应的个数

index= vectorStr.indexOf(text[i]);

int value= vectorInt.get(index)+1;

vectorInt.setElementAt(value, index);

else{//若不存在则添加该单词,同时要初始化对应下标的单词的个数

System.out.println(vectorStr);

for(int i=0; i<vectorStr.size(); i++)

System.out.println(vectorStr.get(i)+"->"+ vectorInt.get(i));

public static void main(String[] args){

最后一个了不容易!考虑加点分吧!

private Stack<Integer> stack= new Stack<Integer>();

System.out.print("输入一个整数:");

Scanner scan= new Scanner(System.in);

System.out.println("输入错误!");

for(int i=1; i<integer; i++)

for(int j= i; j<=integer; j++)

System.out.print(integer+"=");

System.out.print(stack.pop().intValue()+"+");

System.out.print(stack.pop().intValue()+"\n");

System.out.println("该整数没有连续正整数序列!");

public static void main(String[] args){

如果你还想了解更多这方面的信息,记得收藏关注本站。