0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[AtCoder]VS Codeでのコードテストの実施方法[Java]

0
Last updated at Posted at 2025-11-05

はじめに

こんにちは。
プログラミング初心者wakinozaと申します。
Java勉強中に調べたことを記事にまとめています。

十分気をつけて執筆していますが、なにぶん初心者が書いた記事なので、理解が浅い点などあるかと思います。
間違い等あれば、指摘いただけると助かります。

記事を参考にされる方は、初心者の記事であることを念頭において、お読みいただけると幸いです。

対象読者

  • AtCoderを始めたばかりの方
  • プログラミングコンテストのコードを、VS Codeで書いて、テストまで行いたい方

動作環境

  • MacBook(Intel CPU 搭載)
  • Visual Studio Code
  • Oracle Java 21

記事のテーマ

  • AtCoderのABCコンテストに参加しています。
  • これまで、テストは公式HPのコードテスト画面で行なっていました。しかし、コンテスト中は混み合うため、テストの待ち時間が長くなりがちです。
  • テストの待ち時間を短縮できないかと考え、VS Codeでコードテストを行う方法を見つけました。この記事は、その方法の備忘録として書いています。
  • より効率の良いやり方がありそうなので、今後も効率化していきたいです。

本文

本記事では、ローカルでのテスト実行に焦点を当てるため、Java環境構築は以下の記事を参照してください。

フォルダとファイルを作成

まず、VS Codeのターミナルを開き、新しいフォルダ(contestとします)を作成します。
VS Codeのターミナルは、メニューバーの「ターミナル」→「新しいターミナル」を選択して開きます。

mkdir contest

VS Codeのメニューバー「ファイル」→「ファイルを開く」を選択し、作成したフォルダ「contest」を開きます。

次に、開いた「contest」フォルダ内に、Javaファイルを作成します。
VS Codeで「新しいファイルを作成」ボタンを選択し、ファイル名(Main.javaとします)を入力します。

さらに、同じ「contest」フォルダ内に、テストデータを記述するためのテキストファイルを準備しておきます。
ファイル名は「test.txt」とします。
この時点では、ファイルに何も記述していなくても大丈夫です。

コードを記述

例えば、以下のようなコードを準備しておくと、コンテストがスムーズに進められます。

//デフォルトのコード例
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        String s = scanner.next();

        scanner.close();
    }
} 

コンテストが始まれば、問題を確認して、VS Codeに解答コードを記述します。

コードをテスト

解答コードが完成したら、試したいテストデータの入力例をコピーし、準備しておいた「test.txt」ファイルにペーストします。

次に、VS Codeのターミナルを開き、ファイルをコンパイルします。

javac Main.java

そして、ターミナルで、コンパイルされたクラスファイルを実行します。
クラスファイル実行時には、拡張子「.class」は記述せず、ファイル名のみ記述します。
この時、リダイレクト演算子「<」を使って 「test.txt」の内容も渡します。
なお、リダイレクト演算子とは、標準入力(System.in)を経由してファイルの内容を読み込ませるための仕組みです。

java Main < test.txt

クラスファイルを実行すると、ターミナルに実行結果が表示されます。

コードを変更せず、複数のデータでテストを行う場合は、test.txtを新しいデータに置き換えて、同様にクラスファイルを実行します。再コンパイルは不要です。
コードを変更した場合は、コンパイルからやり直します。

十分にテストを実行できたら、解答コードを公式サイトにコピーペーストして提出します。

もし、ファイル名(クラス名)をMain以外にした場合は、公式サイトにコピーペーストした後、提出前にクラス名を「Main」に変更しましょう。
クラス名がMain以外だと、エラーになります。


記事は以上です。
最後までお読みいただき、ありがとうございました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?