JAVA windows 安装

目录

安装JDK

编写Java程序

安装Eclipse

HelloWorld程序

整数转二进制

二分法

安装JDK

1.官网下载JDK文件

https://www.oracle.com/technetwork/java/javase/downloads/index.html

安装最新版本,点击download即可

2.设置环境变量

以Win10为例:计算机 鼠标右键点击属性-->高级系统设置-->环境变量-->系统变量一栏,点击新建,增加名为JAVA_HOME的环境变量,值为JDK的安装地址,再找到Path环境变量,添加%JAVA_HOME%\bin

 配置完成之后,cmd打开命令提示符窗口,输入java --version查看版本,显示以下信息说明安装成功。

 

编写Java程序

Java源码本质上是一个文本文件,需要用javac(编译器)xxx.java文件编译成字节码文件xxx.class:javac xxx.java,然后,用java命令执行这个字节码文件:java xxx

  • 一个Java源码只能定义一个public类型的class,并且class名称和文件名要完全一致;
  • Java规定,某个类定义的public static void main(String[] args)是Java程序的固定入口方法,因此,Java程序总是从main方法开始执行。
  • Java源码的缩进不是必须的。

安装Eclipse

https://www.eclipse.org/downloads/packages/,根据需求选择相应版本下载,此处选择Eclipse IDE for java Developers

下载完成之后,解压,双击eclipse.exe文件即可打开(在此之前需要配置好JDK环境)

之后根据需求修改eclipse的默认配置:

General > Editors > Text Editors  --> 钩上“Show line numbers”,这样编辑器会显示行号;

General > Workspace  --> 钩上“Refresh using native hooks or polling”,这样Eclipse会自动刷新文件夹的改动;

对于“Text file encoding”,如果Default不是UTF-8,一定要改为“Other:UTF-8”,所有文本文件均使用UTF-8编码;

对于“New text file line delimiter”,建议使用Unix,即换行符使用\n而不是Windows的\r\n

HelloWorld程序

Eclipse--> File-->New-->Java Project,创建HelloWorld程序。

展开HelloWorld工程文件-->src--->右键-->New-->Class,在Hello.java文件中写入代码:


public class Hello {
	public static void main(String[] args) {
		System.out.println("Hello, world!");
	}
}

选中左侧Hello.java文件-->右键-->Run As--> Java Application

即可在Console窗口看到运行结果

整数转二进制

int n= 8;	
var s=new StringBuilder();
s.append(n%2);
n/=2;
while(n!=0) {
	s.insert(0, n%2);
	n/=2;
}
return s;  //1000

简洁版:
String s="";
for (int n=N; n>0; n/=2)
    s = s + (n%2);

二分法

public class Hello {
	public static void main(String[] args) {
	    int[]a = {1,2,5,5,5,5,5};
		int m=rank1(5,a);
		int n=rank(5,a);
		int c=count(5,a);
		System.out.println(c);
		System.out.println(m);
		System.out.println(n);
	}
	public static int rank(int key, int[] a) {//二分法
		int l=0;
		int h=a.length-1;
		while(l<=h) {
			int mid=(l+h)/2;
			if(key<a[mid])
				h=mid-1;
			else if(key>a[mid])
				l=mid+1;
			else
				return mid;					
		}
		return -1;		
	}
	
	public static int rank1(int key, int[] a) {//二分法  输出小于key的个数
		int l=0;
		int h=a.length-1;

		while(l<=h) {
			int mid=(l+h)/2;
			if(key<a[mid])
				h=mid-1;
			else if(key>a[mid])
				l=mid+1;
			else
			{
				while(key==a[mid-1])
					mid--;
				return mid;			
			}
		}		
		return -1;		
	}
	
	public static int count(int key, int[] a) {//二分法  输出等于key的个数
		int l=0;
		int h=a.length-1;

		while(l<=h) {
			int mid=(l+h)/2;
			if(key<a[mid])
				h=mid-1;
			else if(key>a[mid])
				l=mid+1;
			else
			{
				int m=mid;
				int count=1;
				while(key==a[mid-1]) {
					count++;
					mid--;
				}
				while((m+1<a.length)&&key==a[m+1]) {
					count++;
					m++;
				}
				return count;			
			}
		}		
		return -1;		
	}
}
===============================================================================
5
2
3

参考:https://www.liaoxuefeng.com/wiki/1252599548343744/1255878730977024

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章