java數組圖片
Ⅰ java 用數組創建圖片
假設你讀取的byte[]名字為data,將其轉換成圖片的方法如下:
ByteArrayInputStream bis = new ByteArrayInputStream(data);
BufferedImage bi = ImageIO.read(bis);
或者
ByteArrayInputStream bis = new ByteArrayInputStream(data);
BufferedImage bi = JPEGCodec.createJPEGDecoder(bis).decodeAsBufferedImage();
順便說一下,ImageIO的性能比較低。
Ⅱ java中圖像與數組轉換
按照你的要求編寫的Java程序如下:( 要注意的地方見語句後面的注釋)
importjava.awt.image.BufferedImage;
importjava.awt.image.RenderedImage;
importjava.io.File;
importjava.io.IOException;
importjavax.imageio.ImageIO;
publicclassImageWithArray{
publicstaticvoidmain(String[]args){
//讀取圖片到BufferedImage
BufferedImagebf=readImage("c:\tmp\6\female.png");//這里寫你要讀取的絕對路徑+文件名
//將圖片轉換為二維數組
int[][]rgbArray1=convertImageToArray(bf);
//輸出圖片到指定文件
writeImageFromArray("c:\tmp\2.png","png",rgbArray1);//這里寫你要輸出的絕對路徑+文件名
System.out.println("圖片輸出完畢!");
}
(StringimageFile){
Filefile=newFile(imageFile);
BufferedImagebf=null;
try{
bf=ImageIO.read(file);
}catch(IOExceptione){
e.printStackTrace();
}
returnbf;
}
publicstaticint[][]convertImageToArray(BufferedImagebf){
//獲取圖片寬度和高度
intwidth=bf.getWidth();
intheight=bf.getHeight();
//將圖片sRGB數據寫入一維數組
int[]data=newint[width*height];
bf.getRGB(0,0,width,height,data,0,width);
//將一維數組轉換為為二維數組
int[][]rgbArray=newint[height][width];
for(inti=0;i<height;i++)
for(intj=0;j<width;j++)
rgbArray[i][j]=data[i*width+j];
returnrgbArray;
}
(StringimageFile,Stringtype,int[][]rgbArray){
//獲取數組寬度和高度
intwidth=rgbArray[0].length;
intheight=rgbArray.length;
//將二維數組轉換為一維數組
int[]data=newint[width*height];
for(inti=0;i<height;i++)
for(intj=0;j<width;j++)
data[i*width+j]=rgbArray[i][j];
//將數據寫入BufferedImage
BufferedImagebf=newBufferedImage(width,height,BufferedImage.TYPE_INT_BGR);
bf.setRGB(0,0,width,height,data,0,width);
//輸出圖片
try{
Filefile=newFile(imageFile);
ImageIO.write((RenderedImage)bf,type,file);
}catch(IOExceptione){
e.printStackTrace();
}
}
}
運行結果:
圖片輸出完畢!
原圖:
Ⅲ java怎樣用數組存儲圖片
先弄個標簽,在滑鼠事件里加入以下代碼。 private void jLabel8MouseClicked(java.awt.event.MouseEvent evt) { // 滑鼠事件
JFileChooser fc=new JFileChooser();
int ret=fc.showOpenDialog(jLabel8);
if(ret==JFileChooser.APPROVE_OPTION){
File file=fc.getSelectedFile();
Icon icon=new ImageIcon(file.getPath());
jLabel8.setIcon(icon);
jLabel8.setText(file.getPath());
}//從文件中讀取圖 片。
Ⅳ 求大神指導如何用java數組和for循環做出這張圖的效果
importjava.util.ArrayList;
importjava.util.Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
//記錄數
intcount=5;
//每筆金額
doubleexpenditure=0;
//總金額
doubleamount=0;
//儲存表格的數組
ArrayList<String>expenditures=newArrayList<String>();
//輸入提示
System.out.println("請輸入會員本月的消費記錄");
//在數組中加入表頭
expenditures.add("序號"+" "+"金額(元)");
//在數組中加入所有記錄
for(inti=0;i<count;i++){
//每筆金額輸入提示
System.out.println("請輸入第"+(i+1)+"筆購物金額:");
//監聽輸入內容
Scannerscn=newScanner(System.in);
//獲取輸入內容以及轉換成double
expenditure=Double.parseDouble(scn.nextLine());
//在數組中加入每筆金額
expenditures.add((i+1)+" "+expenditure);
//累加總金額
amount=amount+expenditure;
}
//在數組中加入總金額
expenditures.add("總金額"+" "+amount);
//列印表格
for(inti=0;i<expenditures.size();i++){
System.out.println(expenditures.get(i));
}
}
}
Ⅳ Java中用數組存放圖片怎麼寫代碼
就是傅存在到byte[] 如果原來是圖片文件,使用FileInputStream 讀入 。。。。。。。~~~~~
Ⅵ Java中數組是否包含某些元素
有兩種方法可以判斷數組是否包含元素:
方法1, 將數組轉換為list,然後使用list的contains方法來判斷:
Arrays.asList(...).contains(...)
方法2,遍歷數組判斷:
Ⅶ 求賜教,一道java數組題!
publicclassMain{
publicstaticvoidmain(String[]args){
Fruitsapple=newFruits("apple",1.8);
Fruitsorange=newFruits("orange",3.5);
Fruitswatermelon=newFruits("watermelon",1.5);
Fruits[]fruits=newFruits[3];
fruits[0]=apple;
fruits[1]=orange;
fruits[2]=watermelon;
intmin=0;
for(inti=1;i<3;i++){
if(fruits[min].getPrice()>fruits[i].getPrice())min=i;
}
System.out.println("Name:"+fruits[min].getName());
System.out.println("Price:"+fruits[min].getPrice());
}
}
classFruits{
privateStringname;
privatedoubleprice;
publicFruits(Stringname,doubleprice){
this.name=name;
this.price=price;
}
voidsetName(Stringname){
this.name=name;
}
voidsetPrice(doubleprice){
this.price=price;
}
StringgetName(){
returnthis.name;
}
doublegetPrice(){
returnprice;
}
}