Pascal for Java users/de: Difference between revisions

From Free Pascal wiki
Jump to navigationJump to search
No edit summary
Line 4: Line 4:
[http://rosettacode.org/wiki/Category:Pascal Rosetta Code]
[http://rosettacode.org/wiki/Category:Pascal Rosetta Code]


==Übersetzen von Java Stichwörtern / Konzepten==
==Übersetzen von Java Operatoren==
{| class="wikitable"
{| class="wikitable"
! Java !! Pascal !! Kommentare
! Java !! Pascal !! Kommentare
|-
|   {
|   Begin
|   Anfang eines Anweisungsblocks
|-
|   }
|   End
|   Ende / Abschluss eines Anweisungsblocks
|-
|-
|   =
|   =
Line 46: Line 38:
|   ==
|   ==
|   =
|   =
|   Gleich / Vergleich
|   Vergleich
|-
|-
|   !=
|   !=
Line 79: Line 71:
|   Dec
|   Dec
|   dekrementieren (Herunterzählen)
|   dekrementieren (Herunterzählen)
|-
|}
== Übersetzen von Java Kommentarzeichen==
{| class="wikitable"
! Java !! Pascal !! Kommentare
|-
|-
|   /*
|   /*
Line 99: Line 96:
|   //
|   //
|   Kommentarzeile
|   Kommentarzeile
|-
|}
==Übersetzen von Java Anweisungsblöcken==
{| class="wikitable"
! Java !! Pascal !! Kommentare
|-
|   {
|   Begin
|   Anfang eines Anweisungsblocks
|-
|   }
|   End
|   Ende / Abschluss eines Anweisungsblocks
|-
|}
==Übersetzen von Java Schleifentypen==
{| class="wikitable"
! Java !! Pascal !! Kommentare
|-
|   for( ..., ..., ...++)
|   For ... To ... Do
|   Kopfgesteuerte Schleife, die Hochgezählt wird
|-
|   for(..., ..., ...--)
|   For ... Downto ... Do
|   Kopfgesteuerte Schleife, die Heruntergezählt wird
|-
|   for (type var : arr) // For Each Schlleife
|   For ... in
|   Kopfgesteuerte Schleife, für das Durchsuchen von Mengen
|-
|   while (...)
|   While ... Do
|   Kopfgesteuerte Schleife
|-
|   do ... while(...)
|   Repeat ... Until
|   Fussgesteuerte Schleife
|-
|   do ... while!(...)
|   Repeat ... Until ... Not
|    Fussgesteuerte Schleife mit Nichtung des Ergebnisses des Ausdrucks
|-
|}
==Übersetzen von Java Verzweigungen / Bedingungen==
{| class="wikitable"
! Java !! Pascal !! Kommentare
|-
|   if(...)
|   If ... Then
|   If-Bedingung
|-
|   if(...) ... else
|   If ... Then ... Else
|   If-Bedingung mit Sonstzweig
|-
|   switch(...) case ...: ...break
|   Case ... Of ...: ... End
|   Case-Bedingung
|-
|   switch(...) case ...: ... break default
|   Case ... Of ...: ... Else ... End
|   Case-Bedingung mit Sonst-Zweig
|-
|}
==Übersetzen von Java Verzweigungen- / Schleifenabbrüchen==
{| class="wikitable"
! Java !! Pascal !! Kommentare
|-
|   break
|   Break
|   Die break-Anweisung ermöglicht es, vorzeitig eine Schleife (oder ein switch-case-Konstrukt) zu verlassen
|-
|   continue
|   Continue
|   Die continue-Anweisung ermöglicht es, den aktuellen Schleifendurchlauf zu beenden
|-
|}
==Übersetzen von Java Stichwörtern / Konzepten==
{| class="wikitable"
! Java !! Pascal !! Kommentare
|-
|-
|   public static void main(String[] args) { }
|   public static void main(String[] args) { }
Line 114: Line 192:
|   null
|   null
|   Nil
|   Nil
|  
|-
|   break
|   Break
|  
|  
|-
|-
Line 135: Line 209:
|   Constructor CtorName
|   Constructor CtorName
|   Der Name des Konstructors ist entweder '''Init''' oder '''Create'''
|   Der Name des Konstructors ist entweder '''Init''' oder '''Create'''
|-
|   continue
|   Continue
|  
|-
|-
|   enum TheEnum
|   enum TheEnum
Line 152: Line 222:
|  
|  
|-  
|-  
|   for ++
|   For ... To ... Do
|   Kopfgesteuerte Schleife, die Hochgezählt wird
|-
|   for --
|   For ... Downto ... Do
|   Kopfgesteuerte Schleife, die Heruntergezählt wird
|-
|   for each
|   For ... in
|   Kopfgesteuerte Schleife, für das Durchsuchen von Mengen
|-
|   while
|   While ... Do
|   Kopfgesteuerte Schleife
|-
|   do while
|   Repeat ... Until
|   Fussgesteuerte Schleife
|-
|   do while  !
|   Repeat ... Until ... Not
|    Fussgesteuerte Schleife mit Nichtung des Ausdrucks
|-
|   if()
|   If ... Then
|   If-Bedingung
|-
|   if() else
|   If ... Then ... Else
|   If-Bedingung mit Sonstzweig
|-
|   package ...;
|   package ...;
|   Unit ...;
|   Unit ...;
Line 267: Line 305:
|   Inherited
|   Inherited
|   Ruft den Elternkonstruktor auf
|   Ruft den Elternkonstruktor auf
|-
|   switch case break
|   Case ... Of ... End
|   Case-Bedingung
|-
|   switch case break default
|   Case ... Of ... Else ... End
|   Case-Bedingung mit Sonst-Zweig
|-
|-
|   synchronized
|   synchronized
Line 313: Line 343:
|}
|}


== Translating Java data types ==
== Übersetzen von Java Datentypen ==
{| class="wikitable"
{| class="wikitable"
! Java type !! Pascal [[Data_type/de|type]] !! Size (bits) !! Range
! Java type !! Pascal [[Data_type/de|type]] !! Size (bits) !! Range

Revision as of 19:03, 11 May 2013

Deutsch (de) English (en)

Übersetzen von gemeinsamen Programm-Teilen

Die folgende englisch sprachige Seite zeigt, wie gemeinsame Probleme in verschiedenen Programmiersprachen, einschließlich Java und FreePascal / Object Pascal gelöst werden können.
Rosetta Code

Übersetzen von Java Operatoren

Java Pascal Kommentare
  =   :=   Zuweisung
  +   +   Addition
  -   -   Subtraktion
  *   *   Multiplikation
  /   /   Division
  %   Mod   Modulo (Division ohne Rest)
  !   Not   Nichten (Den Wahrheitswert in sein Gegenteil ändern)
  ==   =   Vergleich
  !=   <>   ungleich
  &&   And   logisches UND
  ||   Or   logisches ODER
  ^   Xor   exclusives ODER
  >>   Shr   bitweises shift right
  <<   Shl   bitweises shift left
  ++   Inc   inkrementieren (Hochzählen)
  --   Dec   dekrementieren (Herunterzählen)

Übersetzen von Java Kommentarzeichen

Java Pascal Kommentare
  /*   {   Anfang eines Kommentars
  /*   (*   Anfang eines Kommentars
  */   }   Ende eines Kommentars
  */   *)   Ende eines Kommentars
  //   //   Kommentarzeile

Übersetzen von Java Anweisungsblöcken

Java Pascal Kommentare
  {   Begin   Anfang eines Anweisungsblocks
  }   End   Ende / Abschluss eines Anweisungsblocks

Übersetzen von Java Schleifentypen

Java Pascal Kommentare
  for( ..., ..., ...++)   For ... To ... Do   Kopfgesteuerte Schleife, die Hochgezählt wird
  for(..., ..., ...--)   For ... Downto ... Do   Kopfgesteuerte Schleife, die Heruntergezählt wird
  for (type var : arr) // For Each Schlleife   For ... in   Kopfgesteuerte Schleife, für das Durchsuchen von Mengen
  while (...)   While ... Do   Kopfgesteuerte Schleife
  do ... while(...)   Repeat ... Until   Fussgesteuerte Schleife
  do ... while!(...)   Repeat ... Until ... Not   Fussgesteuerte Schleife mit Nichtung des Ergebnisses des Ausdrucks

Übersetzen von Java Verzweigungen / Bedingungen

Java Pascal Kommentare
  if(...)   If ... Then   If-Bedingung
  if(...) ... else   If ... Then ... Else   If-Bedingung mit Sonstzweig
  switch(...) case ...: ...break   Case ... Of ...: ... End   Case-Bedingung
  switch(...) case ...: ... break default   Case ... Of ...: ... Else ... End   Case-Bedingung mit Sonst-Zweig

Übersetzen von Java Verzweigungen- / Schleifenabbrüchen

Java Pascal Kommentare
  break   Break   Die break-Anweisung ermöglicht es, vorzeitig eine Schleife (oder ein switch-case-Konstrukt) zu verlassen
  continue   Continue   Die continue-Anweisung ermöglicht es, den aktuellen Schleifendurchlauf zu beenden

Übersetzen von Java Stichwörtern / Konzepten

Java Pascal Kommentare
  public static void main(String[] args) { }   Program ProgramName; Begin End.   Unterprogramm
  someType arrayVar[]   arrayVar: Array Of someType  
  someType arrayVar[#]   arrayVar: Array[MINRANGE..MAXRANGE] Of someType  
  null   Nil  
  class TheClass { }   TheClass = Class End   FPC / Delphi
  class TheClass { }   TheClass = Object End   FPC / Turbo Pascal
  class TheClass<T> { }   Generic TheClass = Class<T> End   Generische Klassen werden erst ab FPC 2.2.2 unterstützt
  TheClass()   Constructor CtorName   Der Name des Konstructors ist entweder Init oder Create
  enum TheEnum   TheEnum = ( MINVALUE .. MAXVALUE )  
  enum TheEnum = {MINVALUE, MAXVALUE}   TheEnum = ( MINVALUE, MAXVALUE )  
  TheEnum enumVar   enumVar := Set Of TheEnum  
  package ...;   Unit ...;   Einbinden der Pascal Unit bzw. des Java Packages
  import ...;   Uses ...;   Bindet Bibliotheken und Klassen ein
  native   StdCall   Pascal / FPC Standardaufrufkonvention
  native   CDecl   C Standardaufrufkonvention
  abstract   Abstract   Kennzeichnet eine Abstrakte Klasse
  implements   SomeClass = Class(SomeInterface)   Implementiert ein Interface
  extends   SubClass = Class(BaseClass)   Bezeichnet die Klasse von der geerbt wird
  final   Final   Verhindert das nachträgliche Ändern oder Überschreiben von Virtuellen Methoden
  instanceof   Is   Bestimmt die Klassenzugehörigkeit eines Objektes
  interface   TheInterface = Interface   Deklariert die Schnittstelle einer Klasse
  new primitive_type[#]   SetLength(ArrayVar, #)  
  new Class()   InstanceVar := TheClass.Create  
  private   Private  
  protected   Protected  
  public   Public  
  return   FunctionName := ...   Diese Pascal Schreibwese ist übeholt(deprecated)
  return   Result := ...   Einer Funktion Ihren Rückgabewert zuweisen
  static   Static  
  static   Class Function  
  static   Class Procedure  
  super   Inherited   Ruft den Elternkonstruktor auf
  synchronized    
  this   Self  
  throw   Raise   Wirft eine Exception
  throws     Deklariert die zuwerfende Exception im Kopf des Unterprogramms
  transient     Das Feld soll nicht serialisiert werden
  try { ... } catch { ... }   Try Begin ... End Except Begin ... End   Fehlerbehandlung mit einem Try-Block
  try { ... } catch { ... } finally { ... }   begin ... try try ... except ... end; finally ... end; ... end;   Fehlerbehandlung mit einem Block für Abschlussarbeiten
  void   Procedure   Unterprogramm ohne Rückgabewert
  volatile     Speichert den Wert nicht in Registern

Übersetzen von Java Datentypen

Java type Pascal type Size (bits) Range
  byte   Shortint   8-bit   -128 .. 127
  short   SmallInt   16-bit   -32768 .. 32767
  int   LongInt   32-bit   -2147483648..2147483647
  long   Int64   64-bit   -9 223 372 036 854 775 808 .. 9 223 372 036 854 775 807
  float   Single   32-bit   1.5E-45 .. 3.4E+38
  double   Double   64-bit   5.0E-324 .. 1.7E+308
  boolean   Boolean   8-bit   False bzw. True
  char   WideChar   16-bit   2 Zeichen codieren ein sichtbares Zeichen
  String   WideString   0-bit bis ∞   Zeichenkette



--Olaf 14:28, 24 March 2013 (UTC)