日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Java学习笔记(二)不定时更新

發布時間:2023/11/27 生活经验 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java学习笔记(二)不定时更新 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java語言畫圖

package cn.witksy.dev;import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;/*** Author: Alfred* Created: 2015/5/7*/
public class Main {public void run() {BufferedImage bufferedImage = new BufferedImage(100,50,BufferedImage.TYPE_INT_ARGB);Graphics2D g2 = bufferedImage.createGraphics();g2.setColor(Color.red);g2.fillRect(0,0,5,5);g2.setColor(Color.blue);g2.fillRect(10,20,5,5);File outputFile = new File("D:\\dev\\java\\workspace\\draw2dtest\\test.png");try {ImageIO.write(bufferedImage, "png", outputFile);} catch (IOException e) {e.printStackTrace();}}public static void main(String[] args) {new Main().run();}
}

?不循環,直接打印List元素

?

[12.3, 1.3, 10.3]

?

?

<span style="font-size:14px;">打印一個數組中的所有的元素:
1、使用for循環打印
2、將數組轉化為有序的List打印出來
package com.inc.test;import java.util.Arrays;public class Test {public static void main(String[] args) {String names[] = { "Georgianna", "Tenn", "Simon", "Tom" };System.out.println(Arrays.asList(names));}
}</span>

?

?

?

命令行運行jar 并傳參數

博客分類:
  • Java原創
Java? 1.首先新建Test.java
Java代碼 ?
  1. public?class?Test??
  2. {??
  3. ????public?static?void?main(String[]?args)?{??
  4. ????????String?str?=?args[0];??
  5. ????????System.out.println(str);??
  6. ????}??
  7. }??

2.javac Test.java

3.jar cvf test.jar Test.class

//更新manifest.mf 將自己寫的manifest.mf 放到Test.class目錄
內容為 Main-Class: Test注意回車

4.jar umf MANIFEST.MF test.jar

5.java -jar test.jar 你的參數

其它方法請參考

http://www.cnblogs.com/lanxuezaipiao/p/3291641.html 下載net.sf.fjep.fatjar_0.0.31?? http://pan.baidu.com/s/1sj0uawX 或者參考 http://jingyan.baidu.com/article/219f4bf7d0ef87de442d3820.html
在編譯和運行時我們也要加上依賴的jar包,需要注意的是,使用 java -cp 有額外的jar的時候:在Linux下面ClassPath前面是一個點號加一個冒號;在Windows下面ClassPath前面是一個點號加一個分號

?http://blog.csdn.net/czw698/article/details/44353453

?

Java控制臺輸出信息console重定向到文件,后恢復到console
 1 import java.io.FileNotFoundException;
 2 import java.io.PrintStream;
 3 
 4 public class Test {
 5     
 6     public static void main(String[] args){
 7         PrintStream o = System.out;  
 8         try {
 9             System.setOut(new PrintStream("1.txt")); //重定向到文件1.txt
10         } catch (FileNotFoundException e) {
11             // TODO Auto-generated catch block
12             e.printStackTrace();
13         }  
14         System.out.println("line1");  
15         System.setOut(o);  //重定向恢復到控制臺
16         System.out.println("line2");  
17     }
18 
19 }

?

得到指定時間和指定周期的詳細日期時間

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;/*** 得到指定時間和指定周期的詳細日期時間* @author DBClient**/
public class TestTime {private static final SimpleDateFormat df1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");private static final SimpleDateFormat df2 = new SimpleDateFormat("yyyy-MM-dd");public static void main(String[] args) throws Exception {// String timeTmp = "00:00";// Calendar tmpCal = Calendar.getInstance();// tmpCal.setTime(df2.parse(timeTmp));// tmpCal.add(Calendar.MINUTE, -5);//        // //System.out.println(df2.format(tmpCal.getTime()));// int j = 1;// while(j <= 2){// System.out.println(Math.pow(-1, j));// j++;// }String test = "2016-01-23";// new TestTime().calcTime(test);new TestTime().getMonth();new TestTime().getWeek();new TestTime().getQuarter();new TestTime().getYear();}public void calcTime(String testTime) {try {//
Date times = df2.parse(testTime);Calendar cal = Calendar.getInstance();cal.setTime(times);cal.add(Calendar.DATE, -7);cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);System.out.println(df2.format(cal.getTime()));cal.set(Calendar.DAY_OF_WEEK, Calendar.THURSDAY);System.out.println(df2.format(cal.getTime()));//cal.add(Calendar.MONTH, -1);cal.set(Calendar.MONTH, 0);System.out.println(df2.format(cal.getTime()));System.out.println(cal.get(Calendar.MONTH) + 1);// 季度//// cal.add(Calendar.WEEK_OF_MONTH, -1);// System.out.println(df2.format(cal.getTime()));// //cal.add(Calendar.MONTH, -1);// System.out.println(df2.format(cal.getTime()));// System.out.println(cal.get(Calendar.WEEK_OF_YEAR));} catch (Exception e) {e.printStackTrace();}}/*** 月* @throws Exception*/public void getMonth() throws Exception {String test = "2015-02-23";List<String> ret = new ArrayList<String>();Date times = df2.parse(test);Calendar cal = Calendar.getInstance();cal.setTime(times);cal.add(Calendar.MONTH, -1);int month = cal.get(Calendar.MONTH);int year = cal.get(Calendar.YEAR);cal.set(year, month, 1);while(cal.get(Calendar.MONTH) == month){ret.add(df2.format(cal.getTime()));cal.add(Calendar.DATE, 1);}System.out.println(ret);}/*** 周* @throws Exception*/public void getWeek() throws Exception {String test = "2016-01-09";List<String> ret = new ArrayList<String>();Date times = df2.parse(test);Calendar cal = Calendar.getInstance();cal.setTime(times);cal.add(Calendar.DATE, -7);cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);while(ret.size() < 7){ret.add(df2.format(cal.getTime()));cal.add(Calendar.DATE, 1);}System.out.println(ret);}public void getQuarter() throws Exception {String test = "2016-03-01";List<String> ret = new ArrayList<String>();Date times = df2.parse(test);Calendar cal = Calendar.getInstance();cal.setTime(times);cal.add(Calendar.MONTH, -3);int year = cal.get(Calendar.YEAR);int month = cal.get(Calendar.MONTH);if(month >= 0&& month < 3){month = 0;}else if(month >= 3 && month < 6){month = 3;}else if(month >= 6 && month < 9){month = 6;}else if(month >= 9 && month < 12){month = 9;}cal.set(year, month, 1);while(cal.get(Calendar.MONTH) <= month + 2 && cal.get(Calendar.YEAR) == year){ret.add(df2.format(cal.getTime()));cal.add(Calendar.DATE, 1);}System.out.println(ret);}public void getYear() throws Exception {String test = "2016-05-09";List<String> ret = new ArrayList<String>();Date times = df2.parse(test);Calendar cal = Calendar.getInstance();cal.setTime(times);cal.add(Calendar.YEAR, -1);int year = cal.get(Calendar.YEAR);cal.set(year, 0, 1);while(cal.get(Calendar.YEAR) == year){ret.add(df2.format(cal.getTime()));cal.add(Calendar.DATE, 1);}System.out.println(ret);}}
計算指定日期的指定時間段的明細

?Java 依賴包相關運行技巧

有時候不能向服務器上傳jar包,或者交涉過于繁瑣;只有復制粘貼的權限可采取:
1 上傳jar包的解壓文件,可用zip解壓
2 把自己的源碼復制粘貼到解壓文件的目錄下,即可找到依賴包或者把jar包添加到java的LibClass path目錄下

?

導出亂碼:
1、可能是linux缺少中文
命令:locale
命令:fc-list :lang=zh2、可能是jdk缺少中文simsun.ttc
放:$JAVA_HOME/jreb/fonts/fallback

simsun.ttc下載: http://pan.baidu.com/s/1jHy5Uaq

?

JAVA多態原理解釋

//定義超類superA  
class superA  
{  
int i = 100;  
void fun()  
{  
System.out.println(“This is superA”);  
}  
}  
//定義superA的子類subB  
class subB extends superA  
{  
int m = 1;  
void fun()  
{      
System.out.println(“This is subB”);  
}  
}  
//定義superA的子類subC  
class subC extends superA  
{  
int n = 1;  
void fun()  
{      
System.out.println(“This is subC”);  
}  
}  
class Test  
{  
public static void main(String[] args)  
{  
superA a;  
subB  b = new subB();  
subC  c = new subC();  
a=b;  
a.fun();  (1)  
a=c;  
a.fun();  (2)  
}  
}/*
運行結果為:This is subBThis is subC上述代碼中subB和subC是超類superA的子類,我們在類Test中聲明了3個引用變量a, b, c,通過將子類對象引用賦值給超類對象引用變量來實現動態方法調用。也許有人會問:“為什么(1)和(2)不輸出:This is superA”。java 的這種機制遵循一個原則:當超類對象引用變量引用子類對象時,被引用對象的類型而不是引用變量的類型決定了調用誰的成員方法,但是這個被調用的方法必須是在超類中定義過的,也就是說被子類覆蓋的方法。所以,不要被上例中(1)和(2)所迷惑,雖然寫成a.fun(),但是由于(1)中的a被b賦值,指向了子類subB的一個實例,因而(1)所調用的fun()實際上是子類subB的成員方法fun(),它覆蓋了超類superA的成員方法fun();同樣(2)調用的是子類subC的成員方法fun()。另外,如果子類繼承的超類是一個抽象類,雖然抽象類不能通過new操作符實例化,但是可以創建抽象類的對象引用指向子類對象,以實現運行時多態性。具體的實現方法同上例。不過,抽象類的子類必須覆蓋實現超類中的所有的抽象方法,否則子類必須被abstract修飾符修飾,當然也就不能被實例化了。
*/http://developer.51cto.com/art/200909/153887.htm
java多態解釋

?

JAVA多線程樣例

public class Test implements Runnable {private String name;private static int flag = 0;public Test(String name) {this.name = name;}@Overridepublic void run() {while (flag < 100) {flag++;System.out.println(name + ": " + flag);}}public static void main(String[] args) {long startTime = System.currentTimeMillis();for (int i = 0; i < 2; i++) {new Thread(new Test("thread-" + (i + 1))).start();}long endTime = System.currentTimeMillis();System.out.println("spend times: " + (endTime - startTime) / 1000+ " s");}}
java 多線程樣例

?

轉載于:https://www.cnblogs.com/hdu-2010/p/4588989.html

總結

以上是生活随笔為你收集整理的Java学习笔记(二)不定时更新的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。