首先,這個涉及到行和列,所以,這個肯定是用兩個for的嵌套來打印輸出。然后,我們要找出這個的規律,因為“磨刀不誤砍柴工”,所以找出規律所在,我們才知道應該怎么去下手。比如:我們應該把這個分成上下兩個部分,上面部分是:
成都創新互聯公司主營正藍網站建設的網絡公司,主營網站建設方案,重慶APP開發公司,正藍h5小程序制作搭建,正藍網站營銷推廣歡迎正藍等地區企業咨詢
*****
第一行:三個部分;2個空格 1個*號 2個空格 (i=1)
***** 第二行:三個部分;1個空格 3個*號 1個空格 (i=2)
***** 第三行:三個部分;0個空格 5個*號 0個空格 ( i=3)
為了更加方便去找規律,我們把這個圖形補充完整,黑色部分代表著空格,也就是沒有顯示的部分,而紅色部分就是我們的圖形的上半部分。所以我們可以得出的規律是:*號的數量和i的關系為:2*i-1 而,空格因為左右一樣,所以空格為:3-i。所以上半部分的代碼可以這樣寫:
for(int i =1 ;i=3;i++){
for(int j=1;j=3-i;j++){
System.out.print(" ");//打印左邊的空格
}
for(int j=1;j=2*i-1;j++){
System.out.print("*"); //打印*號
}
for(int j=1;j=3-i;j++){
System.out.print(" ");//打印右邊空格(也可以省略)
}
System.out.println();//這是每一行打印完就換行
}
那同樣的,我們也要在下半部分找出規律來:
***** 第一行:三個部分;1個空格 3個*號 1個空格
(i=1)
***** 第一行:三個部分;2個空格
1個*號 2個空格 (i=2)
所以我們可以得出的規律是:*號的數量和i的關系為:5-2*i
而,空格因為左右一樣,所以空格為:i。所以下半部分的代碼可以這樣寫:
for(int i=1;i=2;i++){
for(int j=1;j=i;j++){
System.out.print(" ");
}
for(int j=1;j=5-2*i;j++){
System.out.print("*");
}
for(int j=1;j=i;j++){
System.out.print(" ");
}
System.out.println();
}
同樣的任何只要是這樣的菱形,我們都可以通過這個規律去打印,只需要把上面的數字替換掉,替換成需要打印的數字就可以了,然后規律大家也可以自己去找。只要很認真熟練地打印出這個例子,那么for的嵌套使用就可以比較熟練了。
我給你簡單地寫了下注釋,你看一下
public class test2 {
public static void main(String args[]) {
//打出前四層星
for (int i = 1; i = 7; i += 2) {
//打出空格
for (int kong = 7; kong i - 1; kong--) {
System.out.print(" ");
}
//打出星+空格
for (int xing = 1; xing = i; xing++) {
System.out.print("* ");
}
System.out.println();
}
//打出后三層星
for (int j = 1; j = 5; j += 2) {
//打出空格
for (int kong1 = 1; kong1 j + 3; kong1++) {
System.out.print(" ");
}
//打出星+空格
for (int xing1 = 5; xing1 = j; xing1--) {
System.out.print("* ");
}
//換行
System.out.println();
}
}
}
祝學習進步!
參考下面主要代碼:
public static void draw()
{
int n=10;
for(int i=1;i=n;i++)//控制行數
{
for(int k=n-1;k=i;k--)//打印空格
{
System.out.print(" ");
}
for(int j=1;j=2*i-1;j++)//打印*
{
System.out.print("*");
}
System.out.println();
}
for(int i=n-1;i=1;i--)
{
for(int k=i;k=n-1;k++)
{
System.out.print(" ");
}
for(int j=1;j=2*i-1;j++)
{
System.out.print("*");
}
System.out.println();
}
}
public?class?shu{
public?static?void?main(String[]?a){
for(int?i=0;i6;i++){
for(int?j=6-i;j0;j--){
System.out.print("?");
}
for(int?k=1;k=2*i+1;k++){
System.out.print("*");
}
System.out.println();
}?
/*以上是打印了一個上等腰三角形*/
for(int?i=6;i=0;i--){
for(int?j=6-i;j0;j--){
System.out.print("?");
}
for(int?k=1;k=2*i+1;k++){
System.out.print("*");
}
System.out.println();
}
}
}
只要把for的數據換下??下等腰三角形就出來了,所以原理其實就是打印2個等腰三角形
for(i=1;i=4;i++)
{
這個小的for是打印每一行前邊的空格
for(j=1;j=4-i;j++)
System.out.print(" ");
這個是打印星星的
for(j=1;j=2*i-1;j++)
System.out.print("*");
這個是打印完一行的換行
System.out.println("");
}
下邊的是一樣的 ?只不過每一行的空格和星星數 ? 和上邊是翻過來的
for(i=1;i=3;i++)
{
for(j=1;j=i;j++)
System.out.print(" ");
for(j=1;j=7-2*i;j++)
System.out.print("*");
System.out.println("");
}
java.sql.SQLException: 無效的列索引
無效的列索引
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:207)
atoracle.jdbc.driver.OraclePreparedStatement.setStringInternal(OraclePreparedStatement.java:5328)
atoracle.jdbc.driver.OraclePreparedStatement.setString(OraclePreparedStatement.java:5320)
at untitled5.addreader1.validID(addreader1.java:128)
at untitled5.addreader1.jButton1_actionPerformed(addreader1.java:97)
at untitled5.addreader1_jButton1_actionAdapter.actionPerformed(addreader1.java:175)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
代碼:String driverName = "oracle.jdbc.OracleDriver";
Driver driver = (Driver) Class.forName(driverName).newInstance();
//連接數據庫
Connection con = DriverManager.getConnection(
"jdbc:oracle:thin:@LONG:1521:orcl", "sysman", "tongfang");
PreparedStatement pstmt = con.prepareStatement(
" insert into reader values(?)");
pstmt.setString(1, str1);
pstmt.setString(2,str2);
pstmt.setString(3,str3);
pstmt.setString(4,str4);
ResultSet res = pstmt.executeQuery();
當前標題:java打印菱形簡單代碼 用java打印菱形代碼
分享路徑:http://m.kartarina.com/article4/dodeioe.html
成都網站建設公司_創新互聯,為您提供移動網站建設、Google、定制網站、網站排名、企業網站制作、用戶體驗
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯