Category: Java

JAVA 输出任意奇数的菱形

常用的输出方法为2个等腰三角形叠起来,但是那样循环太多,很容易把人绕昏!

package zuoye;

import java.util.Scanner;

public class Diamond {

	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		System.out.print("请输入要打印行数:");
		int line = 0;

		line = input.nextInt();

		if (line % 2 == 0 || line == 1) {
			System.out.print("输入错误,只能为奇数");
		}else{
			int middle = (line + 1) / 2; 				// 求出中间行号
			int	k = 0;      							// k用于判断是输出上部的位置还是输出下部的位置

			for (int i = 0 ; i < line; i++) { 			// 控制需要输出的行数,取值于 Scanner
				
				if (i < middle) {						// 如果当前行小于中间行,那么赋值k为上部符号和空格的输出
					k++; 								// 上面的三角形的行号(包括中间那行)
				} else {
					k--; 								// 下面的三角形的行号(不包括中间那行)
				}
				
				for (int j = 0; j < middle + k; j++) { 				// 每行打印的空格和星星总数为:j   middle + k = j  也就是总行数
					System.out.print(j > middle - k ? "O" : " "); 	// middle-k的那个格子打印空格,后面的格子打印O
				}
				System.out.println();
			}
		}
		input.close();   // 关闭输入
	}
}

JAVA学习笔记 数组(一)

声明一个数组

String[] aArray = new String[5]; /* 创建5个内存空间 */
String[] bArray = {"a","b","c", "d", "e"};  /* 数组赋值 */
String[] cArray = new String[]{"a","b","c","d","e"};

输出数组

public class main {
	public static void main(String args[]) {
		String[] bArray = {"a","b","c", "d", "e"};
		for (int i=0; i < bArray.length; i++){
			System.out.println(bArray[i]);
		}
	}
}

MyEclipse at java.util.jar.Attributes.read(Attributes.java:410)

扯淡的问题.运行tomcat一直报错..

at java.util.jar.Attributes.read(Attributes.java:410)

到处找问题就是解决不了~~~~~

解决方法:(来自百度~)

1、Class-path: 的冒号后面要加一个空格

java.io.IOException: invalid header field异常(tomcat5.5中)
是因为MAINFEST.MF文件的Class-path:后面少了一空格

Manifest-Version: 1.0
Class-Path:

2、Main-Class: 的冒号后面要加一个空格。

java.io.IOException:invalid header field
at java.util.jar.Attributes.read
ar...
...
异常位置省略。
当时我的manifest.mf文件内容为:

Manifest-Version: 1.0
Main-Class:My1
Created-By: 1.6.0_10-rc2 (Sun Microsystems Inc.)

出现这个错误后,我反复看了命令格式和manifest的内容,并没有错误。
后来仔细看了下正确的mf格式,发现Main-Class:My1冒号后面要加一个空格。
正确格式如下:

Manifest-Version: 1.0
Main-Class: My1
Created-By: 1.6.0_10-rc2 (Sun Microsystems Inc.)

3、Manifest-Version: 1.0和Class-Path: 之间不允许有空行。

今天神奇一样的遇到了一个异常:java.io.IOException: invalid header field ,昨天还好好的代码,今天就变成不能运行了。
然后在网上查找了一下,发现原因是由于META-INF下的MANIFEST.MF文件,可是我从来没有动过这个文件啊,根据网上的解决办法,我把原来

Manifest-Version: 1.0

Class-Path:

变成:

Manifest-Version: 1.0
Class-Path:

Archives