Illustration einer tropischen Insel mit Palmen und einem hohen Berg

Java Blog für Programmierer

range() in Java

· Christian Ullenboom

A range is a very handy feature of programing languages like Python.

  • range( 10 ) -> 0 1 2 3 4 5 6 7 8 9
  • range( 5, 10 ) -> 5 6 7 8 9
  • range( 0, 10, 3 ) -> 0 3 6 9
  • range( ‚0‘, ‚9‘ ) -> 012345678
package com.tutego;import static com.tutego.Range.range;public class RangeDemo{  public static void main( String[] args )  {    for ( int i : range( 10 ) )      System.out.print( i + " " );    System.out.println();    for ( int i : range( 5, 10 ) )      System.out.print( i + " " );    System.out.println();    for ( int i : range( 0, 10, 3 ) )      System.out.print( i + " " );    System.out.println();    for ( int i : range( '0', '9' ) )      System.out.print( (char) i  );    System.out.println();    String[] a = { "Mary", "had", "a", "little", "lamb" };    for ( int i : range(a.length ) )      System.out.printf( "%d %s%n", i, a[i] );  }}

And the main class Range


/* * This project is made available under the terms of the BSD license, more information can be found at * http://www.opensource.org/licenses/bsd-license.html * * Copyright (c) 2007. Christian Ullenboom (http://www.tutego.com/) and contributors. All rights reserved. */package com.tutego;import java.util.Iterator;/** * Class that generates immutable sequences (ranges) as Iterable * objects. A range represents a start (0 if not given), an stop (mandatory) and * an optional step (1 by default). The start value is included in the range, * the stop value is exclusive. Every range is handled by an Iterable * which can by used in an extended for loop. *  *  * for ( int i : range( 0, 10, 3 ) ) *   System.out.print( i + " " ); // 0 3 6 9 *  *  * @author Christian Ullenboom (tutego) * @version 1.0 */public class Range{  public static Iterable range( final int start, final int stop, final int step )  {    if ( step

Kategorien: Allgemein

1 Kommentare

Lars schwegmann ·

HALLO, ICH VERSUCHE DIESE KLASSE IN MEIN PROJEKT EINZUBAUEN. ABER IMMER, WENN ICH DEN CODE AUS DEM BEISPIEL NEHME: FOR (INT I: RANGE(10)) BEKOMME ICH DIESEN FEHLER VOM COMPILER: Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - incompatible types required: int found: java.lang.Object Was kann ich ändern um diesen Fehler zu vermeiden? Danke schonmal, Lars

Die bisherigen Kommentare wurden aus WordPress übernommen. Neue Kommentare sind derzeit geschlossen.

← Alle Beiträge