JAVA经典50题(44)

本文介绍了一个Java程序,用于验证哥德巴赫猜想,即任何一个大于2的偶数都可以表示为两个素数之和。程序首先定义了一个判断素数的方法,然后通过遍历所有可能的组合来寻找符合条件的两个素数。
import java.util.Scanner;

//题目:一个偶数总能表示为两个素数之和。 
public class EvenDecomposition {
	//判断一个数是否为素数
	static boolean judgePrimeNumber(int n)
	{
		boolean flag=false;//素数:true 偶数:false
		if(n<=1) return false;//1不是素数
		for(int i=2;i<=n;i++)
		{
			if(n%i==0)
			{
				if(i>1&&i<n) break;//若一个数能被1和自身之外的数整除,则不是素数
				if(n==i)
				{
					flag=true;
				}
			}
		}
		return flag;
	}
	//将一个偶数分解
	static int[] decomposition(int num)
	{
		int arr[]=new int[2];//存放分解后两个素数
		for(int i=1;i<num;i++)
		{
			if(judgePrimeNumber(i)==true)//i是素数
			{
				for(int j=i;j<num;j++)
				{
					if(judgePrimeNumber(j)==true)//j是素数
					{
						if(num==i+j)//该数等于两素数之和
						{
							arr[0]=i;
							arr[1]=j;
						}
					}
					else continue;
				}
			}
			else continue;
		}
		return arr;
		
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int arr[]=new int[2];//存放分解后两个素数
		System.out.print("输入一个偶数:");
		Scanner input=new Scanner(System.in);
		int num=input.nextInt();
		if(num%2==0)//偶数
		{
			arr=decomposition(num);
			System.out.print(num+"="+arr[0]+"+"+arr[1]);
		}
		else System.out.print("Error input!");
		input.close();
		//System.out.print(judgePrimeNumber(6));
	}

}

好的,我可以回答这个问。以下是50Java面试: 1. 什么是Java? 2. Java有哪些特点? 3. Java的基本数据类型有哪些? 4. 什么是Java的包? 5. Java中的访问修饰符有哪些? 6. 什么是Java的继承? 7. Java中的多态是什么? 8. 什么是Java的接口? 9. Java中的抽象类是什么? 10. 什么是Java的异常? 11. Java中的线程是什么? 12. Java中的同步是什么? 13. 什么是Java的反射? 14. Java中的注解是什么? 15. 什么是Java的泛型? 16. Java中的集合有哪些? 17. 什么是Java的IO? 18. Java中的网络编程是什么? 19. 什么是Java的JVM? 20. Java中的垃圾回收是什么? 21. 什么是Java的内存模型? 22. Java中的类加载是什么? 23. 什么是Java的字节码? 24. Java中的Lambda表达式是什么? 25. 什么是Java的Stream API? 26. Java中的Optional类是什么? 27. 什么是Java的函数式接口? 28. Java中的CompletableFuture是什么? 29. 什么是Java的NIO? 30. Java中的AOP是什么? 31. 什么是Java的ORM框架? 32. Java中的Spring框架是什么? 33. 什么是Java的MyBatis框架? 34. Java中的Hibernate框架是什么? 35. 什么是Java的JPA? 36. Java中的JDBC是什么? 37. 什么是Java的Servlet? 38. Java中的JSP是什么? 39. 什么是Java的Struts框架? 40. Java中的Spring MVC框架是什么? 41. 什么是Java的RESTful API? 42. Java中的SOAP是什么? 43. 什么是Java的XML? 44. Java中的JSON是什么? 45. 什么是Java的JUnit? 46. Java中的Mockito是什么? 47. 什么是Java的Log4j? 48. Java中的SLF4J是什么? 49. 什么是Java的Maven? 50. Java中的Gradle是什么? 希望这些问能够帮助你更好地了解Java
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值