2017-08-08 63 views
0

編輯**謝謝大家的幫助!非常感謝!我需要在反向文本項目中調用方法

抱歉,所有的高級程序員必須看着這個和嘲笑新手,但我試圖。

誰能告訴我如何調用該方法來反轉字符串並打印出它返回的文本?非常感謝,夥計們!

這裏是我的代碼

import java.util.Scanner; 

public class Palindrome { 

public static void main(String [] args) { 
    System.out.println("Please enter the text you would like reversed."); 
    String reverseText 
    System.out.printlne(reverseText);  
} 

public String reverseString() { 
    @SuppressWarnings("resource") 
    Scanner s = new Scanner(System.in); 
    String text = s.nextLine(); 
    String reverseText = new StringBuffer(text).reverse().toString(); 
    return reverseText;  
} 

} 
+4

如何調用一個方法應該是一個最根本的東西。你應該從一些Java書或教程開始。另外,你所做的並不是反向String方法不是創建一個迴文,但我想這只是你整個程序的一部分? – AKSW

+0

是的,我打算製作一個程序,可以翻轉一些文字,然後讓用戶進入迴文。完成後我會發送完成的項目(可能會有一段時間)。我手邊沒有Java書的原因是,它目前不是學年,我一直等到我回到學校才問我的老java老師,如果我可以有一本教科書帶回家。希望這是非常有益的! –

回答

0

有幾件事情你可以做。由於您的方法reverseString未標記關鍵字static,因此默認情況下它是一種實例方法。這意味着要使用它,你需要創建一個迴文對象。

要使用它作爲一個實例方法:

public static void main(String[] args) 
{ 
    System.out.println("Please enter the text you would like reversed."); 
    System.out.println(new Palindrome().reverseString()); 
} 

或者,你可以簡單地使用關鍵字static聲明爲一個類的方法,而不必經過創建的麻煩對象使用該方法(見下文)。

要使用它作爲一個類的方法:

reverseString()方法的頭更改爲如下:

public static String reverseString() { 

,然後從主:

public static void main(String [] args) { 
    System.out.println("Please enter the text you would like reversed."); 
    System.out.println(reverseString()); 
} 
0

更改main方法是

public static void main(String [] args) { 
    System.out.println("Please enter the text you would like reversed."); 
    System.out.println(new Palindrome().reverseString()); 
} 

由於方法也不是一成不變的,你需要創建Palindrome類型的對象,然後才能使用它。 <scoff></scoff>

正如其他人所提到的,也可以讓reverseString方法成爲靜態方法,從而消除了創建對象的必要性。諮詢this link

+0

您的代碼中也有幾個拼寫錯誤。 'println' ** e ** – AKSW

+0

@AKSW謝謝 - 我認爲我已修復 –

+0

@AKSW再次感謝您。 –

0

有一個你的代碼很少出現問題。

  • 您不需要在主方法中初始化新字符串,因爲它是在您的方法中處理的。因此,您可以刪除第5行,以及第6行中對反向文本的引用(將其替換爲對reverseString方法的調用)。
  • 你必須在第6行一個錯字:)System.out.printlne((除去最後的「e」)
  • 因爲沒有創建任何類的實例,你應該靜態調用方法(見下面的代碼)

代碼:

import java.util.Scanner; 

public class Palindrome { 

public static void main(String [] args) { 
    System.out.println("Please enter the text you would like reversed."); 
    System.out.println(reverseString()); 
} 

public static String reverseString() { 
    @SuppressWarnings("resource") 
    Scanner s = new Scanner(System.in); 
    String text = s.nextLine(); 
    String reverseText = new StringBuffer(text).reverse().toString(); 
    return reverseText; 
} 
} 
+0

是的,它確實出現了,因爲他有一個'main'方法,所以他不想將它用作實例方法..但是他有可能嘗試創建一個Palindrome對象,並調用reverseString()方法它,所以在這種情況下,最好是說如何非靜態地做到這一點。 –

+0

我同意他可能想這樣做。這一切只取決於你使用的這個應用程序。我認爲這是一個更簡單的方法來測試這個概念。 –

相關問題