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

 

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