質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

解決済

メゾットからmain文に変数を使用できない。

cretter
cretter

総合スコア89

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

5回答

0評価

1クリップ

290閲覧

投稿2020/08/04 09:49

編集2020/08/08 12:45

前提・実現したいこと

ラベルに張り付けるはずの変数"x"をmain文で使用できるようにしたくてその時にreturnを使って使用できるようにしたかったのですができませんでした。できるようにする方法を教えてください。また、それをラベルで表示されている数字の更新の仕方を教えてください。

発生している問題・エラーメッセージ

denpart0203.java:187: エラー: '.class'がありません return int x; ^

該当のソースコード

import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JTextField; import javax.swing.border.LineBorder; import javax.swing.*; import java.awt.Font; import java.awt.Color; import java.awt.image.BufferedImage; import java.awt.Container; import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.Dimension; import java.awt.event.*; import java.awt.event.KeyEvent; import java.io.File; import javax.imageio.ImageIO; public class denpart0203 extends JFrame implements ActionListener{ static int x; JLabel label01 = new JLabel("" + x ); //ラベルを作成 public static void main(String[] args){ denpart0203 den = new denpart0203("Test"); den.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); den.setVisible(true); } denpart0203(String title){ setTitle("電卓"); setBounds(100, 100, 400, 600); getContentPane().setBackground( Color.WHITE ); JPanel panel01 = new JPanel(); LineBorder border01 = new LineBorder(Color.BLACK, 2, true); //ボーダーラインを作成 panel01.setBorder(border01); //ボーダーラインを表示 setLayout(new FlowLayout()); //レイアウトを選択 panel01.setPreferredSize(new Dimension(250, 350)); //パネルのサイズを指定 panel01.setBackground( new Color(200,255,255) ); //パネルの色を指定 JButton button01 = new JButton("1"); //ボタンを作成 JButton button02 = new JButton("2"); //ボタンを作成 JButton button03 = new JButton("3"); //ボタンを作成 JButton button0pu = new JButton("+"); //ボタンを作成 JButton button04 = new JButton("4"); //ボタンを作成 JButton button05 = new JButton("5"); //ボタンを作成 JButton button06 = new JButton("6"); //ボタンを作成 JButton button0ma = new JButton("ー"); //ボタンを作成 JButton button07 = new JButton("7"); //ボタンを作成 JButton button08 = new JButton("8"); //ボタンを作成 JButton button09 = new JButton("9"); //ボタンを作成 JButton button0ka = new JButton("X"); //ボタンを作成 JButton button0ze = new JButton("0"); //ボタンを作成 JButton button0zero = new JButton("00"); //ボタンを作成 JButton button0wa = new JButton("÷"); //ボタンを作成 JButton button0ce = new JButton("ce"); //ボタンを作成 JButton button0iko = new JButton("="); //ボタンを作成 JButton button0back = new JButton("bs"); //ボタンを作成 button01.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button02.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button03.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0pu.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button04.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button05.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button06.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0ma.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button07.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button08.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button09.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0ka.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0ze.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0zero.setPreferredSize(new Dimension(105, 50)); //ボタンのサイズを指定 button0wa.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0ce.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0iko.setPreferredSize(new Dimension(105, 50)); //ボタンのサイズを指定 button0back.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 getRootPane().setDefaultButton(button0iko); //Enterを押すと[button0iko]を起動 //0はゼロ JPanel panel201 = new JPanel(); panel201.setBorder(border01); //ボーダーラインを表示 panel201.setPreferredSize(new Dimension(215, 50)); //パネルのサイズを指定 panel201.setBackground( Color.WHITE ); //パネルの色を指定 button01.setMnemonic(KeyEvent.VK_1); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button02.setMnemonic(KeyEvent.VK_2); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button03.setMnemonic(KeyEvent.VK_3); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button04.setMnemonic(KeyEvent.VK_4); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button05.setMnemonic(KeyEvent.VK_5); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button06.setMnemonic(KeyEvent.VK_6); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button07.setMnemonic(KeyEvent.VK_7); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button08.setMnemonic(KeyEvent.VK_8); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button09.setMnemonic(KeyEvent.VK_9); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0ze.setMnemonic(KeyEvent.VK_0); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0zero.setMnemonic(KeyEvent.VK_Z); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0pu.setMnemonic(KeyEvent.VK_Q); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0ma.setMnemonic(KeyEvent.VK_W); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0ka.setMnemonic(KeyEvent.VK_E); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0wa.setMnemonic(KeyEvent.VK_R); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0back.setMnemonic(KeyEvent.VK_A); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0ce.setMnemonic(KeyEvent.VK_S); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 add(panel01); //パネルをフレームに表示 panel01.add(panel201); //パネルの中にパネルを表示 panel01.add(button01); //ボタンを表示 panel01.add(button02); //ボタンを表示 panel01.add(button03); //ボタンを表示 panel01.add(button0pu); //ボタンを表示 panel01.add(button04); //ボタンを表示 panel01.add(button05); //ボタンを表示 panel01.add(button06); //ボタンを表示 panel01.add(button0ma); //ボタンを表示 panel01.add(button07); //ボタンを表示 panel01.add(button08); //ボタンを表示 panel01.add(button09); //ボタンを表示 panel01.add(button0ka); //ボタンを表示 panel01.add(button0ze); //ボタンを表示 panel01.add(button0zero); //ボタンを表示 panel01.add(button0wa); //ボタンを表示 panel01.add(button0ce); //ボタンを表示 panel01.add(button0iko); //ボタンを表示 panel01.add(button0back); //ボタンを表示 panel201.add(label01); //パネルをフレームに表示 button01.addActionListener(this); button01.setActionCommand("btn01"); button02.addActionListener(this); button02.setActionCommand("btn02"); button03.addActionListener(this); button03.setActionCommand("btn03"); button04.addActionListener(this); button04.setActionCommand("btn04"); button05.addActionListener(this); button05.setActionCommand("btn05"); button06.addActionListener(this); button06.setActionCommand("btn06"); button07.addActionListener(this); button07.setActionCommand("btn07"); button08.addActionListener(this); button08.setActionCommand("btn08"); button09.addActionListener(this); button09.setActionCommand("btn09"); button0ze.addActionListener(this); button0ze.setActionCommand("btn0ze"); button0zero.addActionListener(this); button0zero.setActionCommand("btn0zero"); button0pu.addActionListener(this); button0pu.setActionCommand("btn0pu"); button0ma.addActionListener(this); button0ma.setActionCommand("btn0ma"); button0ka.addActionListener(this); button0ka.setActionCommand("btn0ka"); button0wa.addActionListener(this); button0wa.setActionCommand("btn0wa"); button0ce.addActionListener(this); button0ce.setActionCommand("btn0ce"); button0iko.addActionListener(this); button0iko.setActionCommand("btn0iko"); button0back.addActionListener(this); button0back.setActionCommand("btn0back"); } public void actionPerformed(ActionEvent e){ String cmd = e.getActionCommand(); if (cmd.equals("btn01")){ put("1"); x = 1; put( x + "カウント"); return x; }else if (cmd.equals("btn02")){ put("2"); }else if (cmd.equals("btn03")){ put("3"); }else if (cmd.equals("btn04")){ put("4"); }else if (cmd.equals("btn05")){ put("5"); }else if (cmd.equals("btn06")){ put("6"); }else if (cmd.equals("btn07")){ put("7"); }else if (cmd.equals("btn08")){ put("8"); }else if (cmd.equals("btn09")){ put("9"); }else if (cmd.equals("btn0ze")){ put("0"); }else if (cmd.equals("btn0pu")){ put("+"); }else if (cmd.equals("btn0ma")){ put("ー"); }else if (cmd.equals("btn0ka")){ put("X"); }else if (cmd.equals("btn0wa")){ put("÷"); }else if (cmd.equals("btn0ce")){ put("ce"); }else if (cmd.equals("btn0iko")){ put("="); }else if (cmd.equals("btn0back")){ put("bs"); }else if (cmd.equals("btn0zero")){ put("00"); } } static void put( String str ) { System.out.println( str ); } }

試したこと

public void actionPerformed(ActionEvent e){
・・・
}
のvoidをintにしてみましたが、
denpart0203.java:187: エラー: '.class'がありません
return int x;
^
エラー1個
とでできました。

補足情報(FW/ツールのバージョンなど)

java jdk-14.0.2

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。