java入門程序
『壹』 自學 java 怎麼入門
自學的困難就是,不知道該從哪裡開始,才怎麼學,沒有一個系統的學習路徑,現在黑馬程序員最新上線了java學習路線圖,非常好的解決了一個難題,可以去搜索看一下。
一、java基礎
學習任何一門編程語言,首先要學習的是基礎語法,開啟Java學習的第一步,當然就是深入掌握計算機基礎、編程基礎語法,面向對象,集合、IO流、線程、並發、異常及網路編程,這些我們稱之為JavaSE基礎。當你掌握了這些內容之後,你就可以做出諸如:電腦上安裝的迅雷下載軟體、QQ聊天客戶端、考勤管理系統等桌面端軟體。
『貳』 Java初學者小程序
import javax.swing.JFrame ;
import javax.swing.JPanel ;
import java.awt.Graphics ;
import java.awt.BorderLayout ;
import java.awt.Color ;
import java.util.ArrayList ;
public class MobileSorter extends JFrame {
//上邊距
public static final int TOP_SPA = 100 ;
//左邊距
public static final int LEFT_SPA = 100 ;
public static void main(String args[]) {
JFrame.(true) ;
MobileSorter ms = new MobileSorter() ;
ms.setVisible(true) ;
}
public MobileSorter() {
//設置窗體大小
this.setSize(400 ,400) ;
//new出組件
MyPanel p = new MyPanel() ;
//布置窗體
this.setLayout(new BorderLayout()) ;
this.add(p ,BorderLayout.CENTER) ;
//啟動線程
Thread t = new Thread(p) ;
t.start() ;
}
}
class MyPanel extends JPanel implements Runnable {
//存儲圓數據的數組
private ArrayList ca = new ArrayList(9);
/**
* 中心圓
*/
private Circle cCenter = null ;
public MyPanel() {
init() ;
}
public void paint(Graphics g) {
//畫與5號位的斜連接線
for (int i = 0; i<9; i++) {
if (i == 4) continue ;
Circle.drawLine(g ,(Circle)ca.get(4) ,(Circle) ca.get(i)) ;
}
//垂直和橫線和豎線
g.setColor(Color.BLACK) ;
for (int i = 0; i<9; i++)
for (int j = 0; j<9; j++)
if (i != j && i < j)
if (j - i ==3 || (i + 1 == j && j%3 != 0))
Circle.drawLine(g , (Circle) ca.get(i) ,(Circle) ca.get(j)) ;
/** 畫圓 */
for (int i = 0; i<9; i++)
((Circle) ca.get(i)).drawMe(g) ;
}
/**
* 初始化
*/
public void init() {
//創建圓
for (int i = 1; i<10; i++)
this.ca.add(new Circle(i)) ;
//生成圓內的數
int[] n = new int[9] ;
for (int i = 0; i<n.length; ) {
int c ;
c = (int)(Math.random() * 8) + 1 ;
boolean isRepeat = false ;
for (int j = 0; j<i; j++)
if (n[j] == c) {
isRepeat = true ;
break ;
}
if (isRepeat) continue ;
if (i == 4) i ++ ;
((Circle)this.ca.get(i)).setNum(c) ;
n[i] = c ;
i ++ ;
}
}
/**
* 線程
*/
public void run() {
int oPos = 0 ; //值為1的圓的標號
int sPos ; //值為1的圓的下一個圓的標號
int ePos ; //終端圓標號
int cPos = 0 ; //操作圓標號
cCenter = (Circle)this.ca.get(4) ; //中心圓
//找出圓內數字的1的圓
for (int i = 0; i<this.ca.size(); i++)
if (((Circle)this.ca.get(i)).getNum() == 1) {
oPos = i ;
break ;
}
sPos = Circle.getNextDeasil(oPos) ;
ePos = oPos ;
while (true) {
cPos = sPos ;
while (true) {
Circle c = (Circle)this.ca.get(cPos) ;
Circle n = (Circle)this.ca.get(Circle.getNextDeasil(cPos)) ;
checkSwap(c ,n) ;
cPos = Circle.getNextDeasil(cPos) ;
if(ePos == Circle.getNextDeasil(cPos)) {
ePos = cPos ;
break ;
}
}
if (ePos == Circle.getNextDeasil(sPos)) {
System.out.println ("OVER!") ;
break ;
}
}
}
/**
* 延遲
*/
private void animation() {
this.repaint() ;
try { Thread.sleep(1000) ;}catch (Exception ex) { }
}
/**
* 交換
*/
private void checkSwap(Circle c ,Circle n) {
int cNum = c.getNum() ;
int nNum = n.getNum() ;
if (cNum > nNum) {
cCenter.setNum(n.getNum()) ;
n.setNum(0) ;
this.animation() ;
n.setNum(c.getNum()) ;
c.setNum(0) ;
this.animation() ;
c.setNum(cCenter.getNum()) ;
cCenter.setNum(0) ;
this.animation() ;
}
}
}
class Circle {
/**
* 各圓之間的間距
*/
public static final int CIR_SPA_BET = 60 ;
/**
* 圓的直徑
*/
public static final int CIR_WD = 30 ;
/**
* 圓的標號 ,1-9
*/
private int pos ;
/**
* 圓的左上角x坐標
*/
private int x ;
/**
* 圓的左上角y坐標
*/
private int y ;
/**
* 圓內的數
*/
private int num ;
public Circle(int pos) {
this.pos = pos ;
this.x = MobileSorter.LEFT_SPA + (pos-1) % 3 * CIR_SPA_BET ;
this.y = MobileSorter.TOP_SPA + (pos-1) / 3 * CIR_SPA_BET ;
}
/**
* 畫圓與圓中的數字
*/
public void drawMe(Graphics g) {
//圓
g.setColor(Color.BLACK) ;
g.fillOval(x ,y ,CIR_WD ,CIR_WD) ;
//數字
g.setColor(Color.WHITE) ;
if (num != 0)
g.drawString(String.valueOf(num)
,x + CIR_WD / 2 - 3 ,y + CIR_WD / 2 + 5) ;
else
g.drawString("空"
,x + CIR_WD / 2 - 3 ,y + CIR_WD / 2 + 5) ;
}
/**
* 畫兩個圓之間的連接線
*/
public static void drawLine(Graphics g ,Circle a , Circle b) {
g.drawLine(a.getX() + Circle.CIR_WD / 2
,a.getY() + Circle.CIR_WD / 2
,b.getX() + Circle.CIR_WD / 2
,b.getY()+ Circle.CIR_WD / 2) ;
}
public void setNum(int num) {
this.num = num ;
}
public int getX() {
return x ;
}
public int getY() {
return y ;
}
public int getPos() {
return pos ;
}
public int getNum() {
return num ;
}
public static int getNextDeasil(int pos) {
if (pos >=0 && pos <=8 && pos != 4) {
if (pos == 0)
return 1 ;
else if (pos == 1)
return 2 ;
else if (pos == 2)
return 5 ;
else if (pos == 3)
return 0 ;
else if (pos == 5)
return 8 ;
else if (pos == 6)
return 3 ;
else if (pos == 7)
return 6 ;
else if (pos == 8)
return 7 ;
}
return -1 ;
}
/**
* 根據順時針方向返回下個圓的標號
*/
public int getNextDeasil() {
if (pos >=0 && pos <=8 && pos != 4) {
if (pos == 0)
return 1 ;
else if (pos == 1)
return 2 ;
else if (pos == 2)
return 5 ;
else if (pos == 3)
return 0 ;
else if (pos == 5)
return 8 ;
else if (pos == 6)
return 3 ;
else if (pos == 7)
return 6 ;
else if (pos == 8)
return 7 ;
}
return -1 ;
}
}
0
『叄』 java怎樣快速入門
零基礎如何學好Java語言編程?作為一個Java初學者,怎樣從一個新手快速入門?這是很多想學Java的新手最關心的問題。今天在這篇文章里我就來詳細解答一下這些問題。
為什麼要學Java
首先,你要想明白自己為什麼要學Java?只是一種興趣愛好,還是為了將來的謀生。或者是因為學習Java的都有一個高薪吸引才學習Java。自己要有一個大概的學習方向、思路。相信目前很多人學習java是因為功利性,即聽說了這個行業的高薪,不要否認。那麼恭喜你,你有了學習java的第一個前提條件,利益激發主動。其實,學習java並不需要所謂的數學邏輯好,需要英語水平棒。告訴你,正常人的智商就足夠了。月薪2K的從事者智商並不會比月薪20K的差,區別只在於,前者不曾學習,後者把學習當成生活的一部分,比如在樂位元組學習的那些同學們。
其次,你要了解Java需要學習哪些知識。這里我分享一份Java的學習路線。作為剛接觸Java的新手,先了解Java的基礎。Java 基本語法、Java 平台應用、Java的核心概念:JVM、JDK、JRE以及Java面向對象思想,同時要會學到如何在系統中搭建Java開發環境,以及如何利用第三方工具進行Java程序的開發。
還有記住學習Java語言最重要的是兩點:
學習步驟/方法
學習資源
找到適合自己的學習方式。找到適合自己現階段的學習資料。學習的過程中最好記筆記,因為好記性不如爛筆頭。在學習Java語言最基礎的知識到Java進階設計階段,要了解常用的設計模式以及Java語言的實現實例來學習Java設計模式。從中我們可以學習到很多類型的設計模式,其中包括工廠模式、抽象工廠模式、單例模式、適配器模式、觀察者模式、裝飾者模式等等。
學習Java的基本路徑就是,首先建立好開發環境。建立起來環境了,最重要的是練習,熟能生巧,在不斷的練習中去加深自己對程序語言的理解。作為新手你可以去找一本比較好的經典的入門書籍,現在網路上也有非常多的資料,圖文或者視頻都可以,根據個人喜好選擇來練習。
做Java開發的話,你需要了解這三個術語,叫SDK、API跟Lib,分別表示軟體開發套件,應用編程介面和庫。這三者之間其實有一定的聯系,或者是交叉。
總體來說,它們都是給我們提供的一些封裝了底層功能的基礎設施。這些東西通常體現為我們所經常說的「框架」。事實上要成為一個資深的Java開發者,對各種API和框架的學習,可能是花時間最多的一個地方。
學習Java,首先完成 Java基礎、JDK、JDBC、正則表達式等基礎實驗,然後進階到 J2SE 和 SSH 框架學習。Java Web全棧開發的推薦學習內容,簡單總結一下,大概包括下面這些內容。每一部分都可以細化成很多知識點,這只是一個粗略的羅列。把它當做技術地圖就好了。
開發環境的建立與項目管理:Eclipse、IntelliJIDEA、Maven和Git.
Java編程基礎:基本語法、面向對象特性、Java8新特性、更高級庫(比如Guava)的使用等。
前端開發技術:HTML、CSS、Bootstrap和JavaScript基礎。
Spring基礎:依賴注入IoC、面向切面編程AOP、SpringBoot.
MVC框架:Spring MVC、Struts等,包括URL路由、模板、表單、Session、攔截器等知識。
數據訪問:關系型資料庫、JDBC、Spring JDBC、事務、ORM框架(MyBatis,Hibernate、JPA)。
成熟應用的關鍵功能實現:郵件發送、非同步任務、緩存、日誌等應用的測試和部署。
還有專門提一下JSP和Servlet,雖然現在各種成熟的MVC框架已經讓Java Web開發基本很少使用JSP和Servlet的原生功能了,基本都做了一層封裝。但是這部分基礎知識建議初學者還是要認真學習。
最後我說一點,程序猿這門職業是個不斷學習的職業。每天都有新技術,雖然不一定都能用上,但是還是要每天學習。Java自己核心的一些包和技術無非是:集合,泛型,IO,多線程,類載入機制,反射,代理。掌握這些,Java就算入門了。初學者從Java零基礎快速入門學好Java語言。初學者最重要的就是不要懶!
『肆』 小白自學JAVA怎麼入門
自學java怎麼算入門? 衡量標準是什麼?
我從個人角度分為三個階梯: 初學,入門,高手
第一: 初學 (理論知識階段)
很多同學剛剛入門學習java,看書,或者看視頻。這個階段是積累理論知識的時候,相對比較容易,一個小知識點,信息量少,跟著老師的思路走就可以。
在這個階段,很多同學學得很快,感覺編程好簡單。
隨著學習的深入,大多數同學會產生混亂。 為什麼?所有的技術背後都有原理,前面都有應用場景,不同應用場景有不同使用方法。 信息量逐級增加。
信息量逐級增大後,會有什麼問題?
學到後面忘記前面。
新技術不斷出現,感覺永遠學不完。 喪失興趣或信心。
理論知識階段,更重要的是理解原理和規律,知識點的細節記不住可後面查找。學習方法更重要的是交流討論,理解和總結。 多問為什麼是關鍵!
第二: 入門 (熟練度)
一個項目從0到1的過程才是最寶貴的,也是初學者提升最大的部分。但從書本或者視頻中,很難學習這個過程。
技術的應用能力換句話說是 技術的分解排序能力, 當遇到一個需求,該如下實現?
基本的思路是把需求分解成原子操作。 原子操作代表開發當中的基本操作,也就是在知識點當中學到的,比如資料庫操作,sql,框架的基本使用等等。
如果能把需求分解為原子操作序列,開發完成只是時間快慢的問題。往往剛剛開始學習編程的同學,不善於或者懶得去思考。畢竟看視頻是被動的,分析問題是主動思考。學習只是看看視頻,本質上是思考的懶惰。
所以需要找大量的練習和項目案例進行實踐!!!
第三: 高手(業務和性能)
程序員是把理論知識組合應用起來解決用戶的問題。(或者提高用戶的效率)
第三個等級的知識更加多元化,不同行業涉及不同的領域知識,信息量也是增大。
業務解決用戶的問題,可以賺錢。
性能用最小的資源,解決用戶的問題,可以省錢。
所以在企業開發中,需要考慮更多和成本,時間,用戶等相關的問題。
總結: 掌握理論知識後,需要大量的代碼去實踐,才算入門。
分享下我們的學習路線,供你參考一下!
希望能幫到你,望採納!
『伍』 java入門程序String類型作業
你好:這個的話:
可以用
String[] list = str. split(" ");
然後根據獲取到的長度,在list.get(i).length;
循環輸出你的長度就可以了,這個就是簡單的正則表達式練習
『陸』 編寫java程序,初學者的作業
根據條件編寫即可,因為是初學者需要自己動手聯練習,參照書上的例子,這樣才能增加實踐經驗。
『柒』 急,用JAVA編寫程序,初學者
Scanner接收控制台輸入。StringBuffer做緩存刪除子串。
publicstaticvoidmain(Stringargv[]){
Scannerscanner=newScanner(System.in);
StringsrcStr=scanner.nextLine();
StringdelStr=scanner.nextLine();
StringBufferbuffer=newStringBuffer(srcStr);
intn=delStr.length();
inti,count=0;
while((i=buffer.indexOf(delStr))>-1){
buffer.delete(i,i+n);
count++;
}
System.out.println("刪除後的字元串:"+buffer);
System.out.println("刪除的次數:"+count);
}
『捌』 java入門第一步應該學什麼
先搭建開發環境,安裝jdk,了解jdk,配置開發環境變數
開發環境搭建完畢之後,要先學基礎語法,java關鍵字,常量變數,標識符,許可權修飾符,常用運算符等等基礎的東西,然後可以開始編寫簡單的程序了
後面學習數組,集合,方法,封裝繼承多態等等
『玖』 java基礎入門
關於用if語句實現從百分製成績到五分製成績的轉換,代碼如下:
publicclassTest{
//程序轉換方法
publicStringjudge(){
Scannerscanner=newScanner(System.in);
System.out.println("請輸入1-100的成績");
inti=scanner.nextInt();
if(i<=60){
return"E";
}elseif(i<=70){
return"D";
}elseif(i<=80){
return"C";
}elseif(i<=90){
return"B";
}else{
return"A";
}
}
//測試
publicstaticvoidmain(String[]args){
Testtest=newTest();
System.out.println(test.judge());
}
}
測試:
『拾』 java小程序入門
先到官網下載myeclipse或者eclipse編程軟體,並配置java環境變數,在網路搜索欄依次搜索eclipse下載和搜索java環境變數的配置,就可以找到圖文並茂的詳細教程。下面介紹一下怎麼製作小程序:
1、打開myeclispe(eclipse都一樣),依次點擊File->New->Java Project,然後給這個項目起一個名字(隨便起),這里就叫MyFirst.然後點擊Finish;
(10)java入門程序擴展閱讀:
Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程。
參考資料:Java-網路